Problem/Motivation

In the test for #2867493: Error: Call to a member function getTotalCount() on boolean in statistics_get() I used a really big integer for the node ID to help ensure the node did not exist in the test; however, this is causing fails on postgres:
https://www.drupal.org/pift-ci-job/641100

Failing tests:

Statistics.Drupal\statistics\Tests\StatisticsLoggingTest

✗ handleQueryException
  exception: [Uncaught exception] Line 685 of
core/lib/Drupal/Core/Database/Connection.php:
  Drupal\Core\Database\DatabaseExceptionWrapper: SQLSTATE[22003]: Numeric
value out of range: 7 ERROR:  value "10000000000000000" is out of range for
type integer
  LINE 5: WHERE base.nid IN ('10000000000000000')
                             ^: SELECT revision.vid AS vid,revision.langcode
AS langcode, revision.revision_timestamp AS revision_timestamp,
revision.revision_uid AS revision_uid, revision.revision_log AS revision_log,
base.nid AS nid, base.type AS type, base.uuid AS uuid, CASE base.vid WHEN
revision.vid THEN 1 ELSE 0 END AS "isDefaultRevision"
  FROM
  {node} base
  INNER JOIN {node_revision} revision ON revision.vid = base.vid
  WHERE base.nid IN (:db_condition_placeholder_0); Array
  (
      [:db_condition_placeholder_0] => 10000000000000000
  )
   in Drupal\Core\Entity\Sql\SqlContentEntityStorage->getFromStorage() (line
428 of
/var/www/html/core/lib/Drupal/Core/Entity/Sql/SqlContentEntityStorage.php).
Drupal\Core\Database\Connection->handleQueryException(Object, 'SELECT
revision.vid AS vid, revision.langcode AS langcode,
revision.revision_timestamp AS revision_timestamp, revision.revision_uid AS
revision_uid, revision.revision_log AS revision_log, base.nid AS nid,
base.type AS type, base.uuid AS uuid, CASE base.vid WHEN revision.vid THEN 1
ELSE 0 END AS "isDefaultRevision"
  FROM
  {node} base
  INNER JOIN {node_revision} revision ON revision.vid = base.vid
  WHERE base.nid IN (:db_condition_placeholder_0)', Array, Array) (Line:649)
  Drupal\Core\Database\Connection->query('SELECT revision.vid AS vid,
revision.langcode AS langcode, revision.revision_timestamp AS
revision_timestamp, revision.revision_uid AS revision_uid,
revision.revision_log AS revision_log, base.nid AS nid, base.type AS type,
base.uuid AS uuid, CASE base.vid WHEN revision.vid THEN 1 ELSE 0 END AS
"isDefaultRevision"
  FROM
  {node} base
  INNER JOIN {node_revision} revision ON revision.vid = base.vid
  WHERE base.nid IN (:db_condition_placeholder_0)', Array, Array) (Line:200)
  Drupal\Core\Database\Driver\pgsql\Connection->query('SELECT revision.vidAS
vid, revision.langcode AS langcode, revision.revision_timestamp AS
revision_timestamp, revision.revision_uid AS revision_uid,
revision.revision_log AS revision_log, base.nid AS nid, base.type AS type,
base.uuid AS uuid, CASE base.vid WHEN revision.vid THEN 1 ELSE 0 END AS
"isDefaultRevision"
  FROM
  {node} base
  INNER JOIN {node_revision} revision ON revision.vid = base.vid
  WHERE base.nid IN (:db_condition_placeholder_0)', Array, Array) (Line:508)
  Drupal\Core\Database\Query\Select->execute() (Line: 145)
  Drupal\Core\Database\Driver\pgsql\Select->execute() (Line: 428)
  Drupal\Core\Entity\Sql\SqlContentEntityStorage->getFromStorage(Array)
(Line: 399)
  Drupal\Core\Entity\Sql\SqlContentEntityStorage->doLoadMultiple(Array)
(Line: 242)
  Drupal\Core\Entity\EntityStorageBase->loadMultiple(Array) (Line: 212)
  Drupal\Core\Entity\EntityStorageBase->load(10000000000000000) (Line: 499)
  Drupal\Core\Entity\Entity::load(10000000000000000) (Line: 133)
  Drupal\statistics\Tests\StatisticsLoggingTest->testLogging() (Line: 958)
  Drupal\simpletest\TestBase->run(Array) (Line: 792)
  simpletest_script_run_one_test('1884',
'Drupal\statistics\Tests\StatisticsLoggingTest') (Line: 66)

Proposed resolution

Fewer zeroes.

Remaining tasks

Run the test against postgres environments.

Support from Acquia helps fund testing for Drupal Acquia logo

Comments

xjm created an issue. See original summary.

xjm’s picture

cilefen’s picture

Status: Needs review » Reviewed & tested by the community

There is not much to say.

alexpott’s picture

Status: Reviewed & tested by the community » Fixed

Committed and pushed 1ae84c3 to 8.4.x and 02d82cd to 8.3.x. Thanks!

  • alexpott committed 1ae84c3 on 8.4.x
    Issue #2867887 by xjm: statistics_get() test mashes 0 too much
    

  • alexpott committed 02d82cd on 8.3.x
    Issue #2867887 by xjm: statistics_get() test mashes 0 too much
    
    (cherry...

Status: Fixed » Closed (fixed)

Automatically closed - issue fixed for 2 weeks with no activity.