Skip to content

Instantly share code, notes, and snippets.

@terriyu
Last active December 19, 2015 14:58
Show Gist options
  • Select an option

  • Save terriyu/5972794 to your computer and use it in GitHub Desktop.

Select an option

Save terriyu/5972794 to your computer and use it in GitHub Desktop.
I cherry-picked this patch: https://review.openstack.org/#/c/33290/ , but my test still fails with "OperationFailure: database error: too much data for sort() with no index."
GLOB sdist-make: /opt/stack/ceilometer/setup.py
py27 inst-nodeps: /opt/stack/ceilometer/.tox/dist/ceilometer-2013.2.a161.g6ef0a97.zip
py27 runtests: commands[0]
WARNING:test command found but not installed in testenv
cmd: /bin/bash
env: /opt/stack/ceilometer/.tox/py27
Maybe forgot to specify a dependency?
+ set -e
+ bash tools/init_testr_if_needed.sh
+ python setup.py testr --slowest '--testr-args=--concurrency=1 --here=nova_tests tests.storage.test_impl_mongodb.RawSampleTest.test_get_samples_in_default_order'
running testr
running=${PYTHON:-python} -m subunit.run discover -t ./nova_tests ./nova_tests --list
PASSED (id=85)
Slowest Tests
Test id Runtime (s)
------------------------------------------------------------------------------- -----------
tests.storage.test_impl_mongodb.RawSampleTest.test_get_samples_in_default_order 309.347
process-returncode 0.000
++ mktemp -d
+ MONGO_DATA=/tmp/tmp.Y8OFDh0jbz
+ trap 'rm -rf /tmp/tmp.Y8OFDh0jbz' EXIT
+ MONGO_PID=3940
+ trap 'kill -9 3940 || true' EXIT
+ export CEILOMETER_TEST_MONGODB_URL=mongodb://localhost:29004/ceilometer
+ mongod --maxConns 32 --smallfiles --quiet --noauth --port 29004 --dbpath /tmp/tmp.Y8OFDh0jbz --bind_ip localhost
+ CEILOMETER_TEST_MONGODB_URL=mongodb://localhost:29004/ceilometer
+ python setup.py testr --slowest '--testr-args=--concurrency=1 tests.storage.test_impl_mongodb.RawSampleTest.test_get_samples_in_default_order'
Thu Jul 11 05:04:12 [initandlisten] MongoDB starting : pid=3940 port=29004 dbpath=/tmp/tmp.Y8OFDh0jbz 64-bit host=precise64
Thu Jul 11 05:04:12 [initandlisten] db version v2.0.4, pdfile version 4.5
Thu Jul 11 05:04:12 [initandlisten] git version: nogitversion
Thu Jul 11 05:04:12 [initandlisten] build info: Linux lamiak 2.6.42-37-generic #58-Ubuntu SMP Thu Jan 24 15:28:10 UTC 2013 x86_64 BOOST_LIB_VERSION=1_46_1
Thu Jul 11 05:04:12 [initandlisten] options: { bind_ip: "localhost", dbpath: "/tmp/tmp.Y8OFDh0jbz", maxConns: 32, noauth: true, port: 29004, quiet: true, smallfiles: true }
Thu Jul 11 05:04:12 [initandlisten] journal dir=/tmp/tmp.Y8OFDh0jbz/journal
Thu Jul 11 05:04:12 [initandlisten] recover : no journal files present, no recovery needed
running testr
Thu Jul 11 05:04:12 [initandlisten] preallocateIsFaster=true 15.48
Thu Jul 11 05:04:13 [initandlisten] preallocateIsFaster=true 16.18
Thu Jul 11 05:04:15 [initandlisten] preallocateIsFaster=true 15.9
Thu Jul 11 05:04:15 [initandlisten] preallocateIsFaster check took 3.596 secs
Thu Jul 11 05:04:15 [initandlisten] preallocating a journal file /tmp/tmp.Y8OFDh0jbz/journal/prealloc.0
Thu Jul 11 05:04:16 [initandlisten] preallocating a journal file /tmp/tmp.Y8OFDh0jbz/journal/prealloc.1
Thu Jul 11 05:04:16 [initandlisten] preallocating a journal file /tmp/tmp.Y8OFDh0jbz/journal/prealloc.2
Thu Jul 11 05:04:16 [initandlisten] waiting for connections on port 29004
Thu Jul 11 05:04:16 [websvr] admin web console waiting for connections on port 30004
Thu Jul 11 05:04:16 [FileAllocator] allocating new datafile /tmp/tmp.Y8OFDh0jbz/ceilometer.ns, filling with zeroes...
Thu Jul 11 05:04:16 [FileAllocator] creating directory /tmp/tmp.Y8OFDh0jbz/_tmp
Thu Jul 11 05:04:16 [FileAllocator] done allocating datafile /tmp/tmp.Y8OFDh0jbz/ceilometer.ns, size: 16MB, took 0 secs
Thu Jul 11 05:04:17 [FileAllocator] allocating new datafile /tmp/tmp.Y8OFDh0jbz/ceilometer.0, filling with zeroes...
Thu Jul 11 05:04:17 [FileAllocator] done allocating datafile /tmp/tmp.Y8OFDh0jbz/ceilometer.0, size: 16MB, took 0.001 secs
Thu Jul 11 05:04:17 [FileAllocator] allocating new datafile /tmp/tmp.Y8OFDh0jbz/ceilometer.1, filling with zeroes...
Thu Jul 11 05:04:17 [FileAllocator] done allocating datafile /tmp/tmp.Y8OFDh0jbz/ceilometer.1, size: 32MB, took 0.001 secs
Thu Jul 11 05:04:17 [conn1] build index ceilometer.resource { _id: 1 }
Thu Jul 11 05:04:17 [conn1] build index done 0 records 0 secs
Thu Jul 11 05:04:17 [conn1] info: creating collection ceilometer.resource on add index
Thu Jul 11 05:04:17 [conn1] build index ceilometer.resource { user_id: 1, source: 1 }
Thu Jul 11 05:04:17 [conn1] build index done 0 records 0 secs
Thu Jul 11 05:04:17 [conn1] build index ceilometer.meter { _id: 1 }
Thu Jul 11 05:04:17 [conn1] build index done 0 records 0 secs
Thu Jul 11 05:04:17 [conn1] info: creating collection ceilometer.meter on add index
Thu Jul 11 05:04:17 [conn1] build index ceilometer.meter { resource_id: 1, user_id: 1, counter_name: 1, timestamp: 1, source: 1 }
Thu Jul 11 05:04:17 [conn1] build index done 0 records 0 secs
Thu Jul 11 05:04:17 [conn1] build index ceilometer.meter { timestamp: 1 }
Thu Jul 11 05:04:17 [conn1] build index done 0 records 0 secs
Thu Jul 11 05:04:17 [conn1] dropDatabase ceilometer
Thu Jul 11 05:04:17 [conn1] removeJournalFiles
Thu Jul 11 05:04:17 [FileAllocator] allocating new datafile /tmp/tmp.Y8OFDh0jbz/ceilometer.ns, filling with zeroes...
Thu Jul 11 05:04:17 [FileAllocator] done allocating datafile /tmp/tmp.Y8OFDh0jbz/ceilometer.ns, size: 16MB, took 0.002 secs
Thu Jul 11 05:04:17 [FileAllocator] allocating new datafile /tmp/tmp.Y8OFDh0jbz/ceilometer.0, filling with zeroes...
Thu Jul 11 05:04:17 [FileAllocator] done allocating datafile /tmp/tmp.Y8OFDh0jbz/ceilometer.0, size: 16MB, took 0.001 secs
Thu Jul 11 05:04:17 [conn1] build index ceilometer.user { _id: 1 }
Thu Jul 11 05:04:17 [FileAllocator] allocating new datafile /tmp/tmp.Y8OFDh0jbz/ceilometer.1, filling with zeroes...
Thu Jul 11 05:04:17 [conn1] build index done 0 records 0 secs
Thu Jul 11 05:04:17 [FileAllocator] done allocating datafile /tmp/tmp.Y8OFDh0jbz/ceilometer.1, size: 32MB, took 0 secs
Thu Jul 11 05:04:17 [conn1] build index ceilometer.project { _id: 1 }
Thu Jul 11 05:04:17 [conn1] build index done 0 records 0.003 secs
Thu Jul 11 05:04:17 [conn1] build index ceilometer.resource { _id: 1 }
Thu Jul 11 05:04:17 [conn1] build index done 0 records 0 secs
Thu Jul 11 05:04:17 [conn1] build index ceilometer.meter { _id: 1 }
Thu Jul 11 05:04:17 [conn1] build index done 0 records 0 secs
Thu Jul 11 05:04:38 [FileAllocator] allocating new datafile /tmp/tmp.Y8OFDh0jbz/ceilometer.2, filling with zeroes...
Thu Jul 11 05:04:38 [FileAllocator] done allocating datafile /tmp/tmp.Y8OFDh0jbz/ceilometer.2, size: 64MB, took 0.005 secs
Thu Jul 11 05:05:40 [FileAllocator] allocating new datafile /tmp/tmp.Y8OFDh0jbz/ceilometer.3, filling with zeroes...
Thu Jul 11 05:05:40 [FileAllocator] done allocating datafile /tmp/tmp.Y8OFDh0jbz/ceilometer.3, size: 128MB, took 0.006 secs
Thu Jul 11 05:08:28 [FileAllocator] allocating new datafile /tmp/tmp.Y8OFDh0jbz/ceilometer.4, filling with zeroes...
Thu Jul 11 05:08:28 [FileAllocator] done allocating datafile /tmp/tmp.Y8OFDh0jbz/ceilometer.4, size: 256MB, took 0.002 secs
Thu Jul 11 05:09:32 [conn1] assertion 10128 too much data for sort() with no index. add an index or specify a smaller limit ns:ceilometer.meter query:{ $query: {}, $orderby: { timestamp: -1 } }
Thu Jul 11 05:09:32 [conn1] query ceilometer.meter query: { $query: {}, $orderby: { timestamp: -1 } } exception: too much data for sort() with no index. add an index or specify a smaller limit code:10128 reslen:126 1333ms
running=${PYTHON:-python} -m subunit.run discover -t ./ ./tests --list
running=${PYTHON:-python} -m subunit.run discover -t ./ ./tests --load-list /tmp/tmp_Cj5Hg
======================================================================
FAIL: tests.storage.test_impl_mongodb.RawSampleTest.test_get_samples_in_default_order
tags: worker-0
----------------------------------------------------------------------
pythonlogging:'': {{{connecting to MongoDB on localhost:29004}}}
Traceback (most recent call last):
File "/opt/stack/ceilometer/tests/storage/base.py", line 357, in test_get_samples_in_default_order
for sample in self.conn.get_samples(f):
File "/opt/stack/ceilometer/ceilometer/storage/impl_mongodb.py", line 493, in get_samples
for s in samples:
File "/opt/stack/ceilometer/.tox/py27/local/lib/python2.7/site-packages/pymongo/cursor.py", line 814, in next
if len(self.__data) or self._refresh():
File "/opt/stack/ceilometer/.tox/py27/local/lib/python2.7/site-packages/pymongo/cursor.py", line 763, in _refresh
self.__uuid_subtype))
File "/opt/stack/ceilometer/.tox/py27/local/lib/python2.7/site-packages/pymongo/cursor.py", line 720, in __send_message
self.__uuid_subtype)
File "/opt/stack/ceilometer/.tox/py27/local/lib/python2.7/site-packages/pymongo/helpers.py", line 100, in _unpack_response
error_object["$err"])
OperationFailure: database error: too much data for sort() with no index. add an index or specify a smaller limit
======================================================================
FAIL: process-returncode
tags: worker-0
----------------------------------------------------------------------
Binary content:
traceback (test/plain; charset="utf8")
Ran 2 tests in 316.066s (+6.352s)
FAILED (id=90, failures=2)
error: testr failed (1)
+ kill -9 3940
ERROR: InvocationError: '/bin/bash -x run-tests.sh tests.storage.test_impl_mongodb.RawSampleTest.test_get_samples_in_default_order'
___________________________________ summary ____________________________________
ERROR: py27: commands failed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment