async def run(self): await self.client0.connect() self.series_float = gen_points(tp=float, n=10000, time_precision=TIME_PRECISION, ts_gap='5m') random.shuffle(self.series_float) self.series_int = gen_points(tp=int, n=10000, time_precision=TIME_PRECISION, ts_gap='5m') random.shuffle(self.series_int) self.assertEqual( await self.client0.insert({ 'series float': self.series_float, 'series int': self.series_int }), {'success_msg': 'Successfully inserted 20000 point(s).'}) self.series_float.sort() self.series_int.sort() await self._test_series(self.client0) await self.client0.query('drop series /.*/ set ignore_threshold true') # Create some random series and start 25 insert task parallel series = gen_series(n=40) for i in range(40): await self.client0.insert_some_series(series, n=0.8, timeout=0, points=self.GEN_POINTS) # Check the result await self.assertSeries(self.client0, series) for i in range(40): await self.client0.insert_some_series(series, n=0.8, timeout=0, points=self.GEN_POINTS) # Check the result await self.assertSeries(self.client0, series) self.client0.close() result = await self.server0.stop() self.assertTrue(result) await self.server0.start(sleep=10) await self.client0.connect() # Check the result after rebooting the server await self.assertSeries(self.client0, series) return False
async def run(self): series = gen_series(n=10000) await self.client0.connect() task0 = asyncio.ensure_future(self.insert(self.client0, series, 200)) await asyncio.sleep(5) await self.db.add_pool(self.server1, sleep=3) with self.assertRaises(AssertionError): await self.db.add_pool(self.server2, sleep=3) await self.client1.connect() task1 = asyncio.ensure_future(self.insert(self.client1, series, 150)) await asyncio.sleep(5) await self.assertIsRunning(self.db, self.client0, timeout=200) await asyncio.sleep(25) await self.db.add_replica(self.server3, 1, sleep=3) await self.client3.connect() await self.assertIsRunning(self.db, self.client3, timeout=200) await asyncio.sleep(30) await self.db.add_pool(self.server2, sleep=3) await self.client2.connect() task2 = asyncio.ensure_future(self.insert(self.client2, series, 100)) await self.assertIsRunning(self.db, self.client0, timeout=600) await asyncio.wait_for(task0, None) await asyncio.wait_for(task1, None) await asyncio.wait_for(task2, None) await asyncio.sleep(1) await self.assertSeries(self.client0, series) await self.assertSeries(self.client1, series) await self.assertSeries(self.client2, series) await self.assertSeries(self.client3, series) self.client0.close() self.client1.close() self.client2.close() self.client3.close()
async def run(self): await self.client0.connect() self.assertEqual(await self.client0.insert({}), {'success_msg': 'Successfully inserted 0 point(s).'}) self.assertEqual(await self.client0.insert([]), {'success_msg': 'Successfully inserted 0 point(s).'}) self.series_float = gen_points(tp=float, n=10000, time_precision=TIME_PRECISION, ts_gap='5m') random.shuffle(self.series_float) self.series_int = gen_points(tp=int, n=10000, time_precision=TIME_PRECISION, ts_gap='5m') random.shuffle(self.series_int) self.assertEqual( await self.client0.insert({ 'series float': self.series_float, 'series int': self.series_int }), {'success_msg': 'Successfully inserted 20000 point(s).'}) self.series_float.sort() self.series_int.sort() await self._test_series(self.client0) with self.assertRaises(InsertError): await self.client0.insert('[]') with self.assertRaises(InsertError): await self.client0.insert('[]') with self.assertRaises(InsertError): await self.client0.insert([{}]) with self.assertRaises(InsertError): await self.client0.insert({'no points': []}) with self.assertRaises(InsertError): await self.client0.insert({'no points': [[]]}) with self.assertRaises(InsertError): await self.client0.insert([{'name': 'no points', 'points': []}]) # timestamps should be interger values with self.assertRaises(InsertError): await self.client0.insert({'invalid ts': [[0.5, 6]]}) # empty series name is not allowed with self.assertRaises(InsertError): await self.client0.insert({'': [[1, 0]]}) # empty series name is not allowed with self.assertRaises(InsertError): await self.client0.insert([{'name': '', 'points': [[1, 0]]}]) await self.db.add_replica(self.server1, 0, sleep=3) # await self.db.add_pool(self.server1, sleep=3) await self.assertIsRunning(self.db, self.client0, timeout=3) await self.client1.connect() await self._test_series(self.client1) # Create some random series and start 25 insert task parallel series = gen_series(n=10000) tasks = [ asyncio.ensure_future( self.client0.insert_some_series(series, timeout=0, points=self.GEN_POINTS)) for i in range(25) ] await asyncio.gather(*tasks) await asyncio.sleep(2) # Check the result await self.assertSeries(self.client0, series) await self.assertSeries(self.client1, series) tasks = [ asyncio.ensure_future( self.client0.query( 'drop series /.*/ set ignore_threshold true')) for i in range(5) ] await asyncio.gather(*tasks) tasks = [ asyncio.ensure_future( self.client0.query('drop shards set ignore_threshold true')) for i in range(5) ] await asyncio.gather(*tasks) await asyncio.sleep(2) self.client0.close() self.client1.close()
async def run(self): await self.client0.connect() # Create some random series and start 25 insert task parallel series = gen_series(n=10000) tasks = [ asyncio.ensure_future( self.client0.insert_some_series( series, timeout=0, points=self.GEN_POINTS)) for i in range(25)] await asyncio.gather(*tasks) await self.client0.query('list series /.*/ - /.*/') await self.client0.query('list series /.*/ | /.*/') await self.client0.query('list series /.*/ & /.*/') await self.client0.query('list series /.*/ ^ /.*/') await self.client0.query('list series /.*/ - /a.*/') await self.client0.query('list series /.*/ | /a.*/') await self.client0.query('list series /.*/ & /a.*/') await self.client0.query('list series /.*/ ^ /a.*/') await self.client0.query('list series /.*/ - /a.*/ | /b.*/') await self.client0.query('list series /.*/ | /a.*/ | /b.*/') await self.client0.query('list series /.*/ & /a.*/ | /b.*/') await self.client0.query('list series /.*/ ^ /a.*/ | /b.*/') await self.client0.query('list series /.*/ - /a.*/ | /.*/') await self.client0.query('list series /.*/ | /a.*/ | /.*/') await self.client0.query('list series /.*/ & /a.*/ | /.*/') await self.client0.query('list series /.*/ ^ /a.*/ | /.*/') await self.client0.query('list series /.*/ - /a.*/ - /b.*/') await self.client0.query('list series /.*/ | /a.*/ - /b.*/') await self.client0.query('list series /.*/ & /a.*/ - /b.*/') await self.client0.query('list series /.*/ ^ /a.*/ - /b.*/') await self.client0.query('list series /.*/ - /a.*/ - /.*/') await self.client0.query('list series /.*/ | /a.*/ - /.*/') await self.client0.query('list series /.*/ & /a.*/ - /.*/') await self.client0.query('list series /.*/ ^ /a.*/ - /.*/') await self.client0.query('list series /.*/ - /a.*/ & /b.*/') await self.client0.query('list series /.*/ | /a.*/ & /b.*/') await self.client0.query('list series /.*/ & /a.*/ & /b.*/') await self.client0.query('list series /.*/ ^ /a.*/ & /b.*/') await self.client0.query('list series /.*/ - /a.*/ & /.*/') await self.client0.query('list series /.*/ | /a.*/ & /.*/') await self.client0.query('list series /.*/ & /a.*/ & /.*/') await self.client0.query('list series /.*/ ^ /a.*/ & /.*/') await self.client0.query('list series /.*/ - /a.*/ ^ /b.*/') await self.client0.query('list series /.*/ | /a.*/ ^ /b.*/') await self.client0.query('list series /.*/ & /a.*/ ^ /b.*/') await self.client0.query('list series /.*/ ^ /a.*/ ^ /b.*/') await self.client0.query('list series /.*/ - /a.*/ ^ /.*/') await self.client0.query('list series /.*/ | /a.*/ ^ /.*/') await self.client0.query('list series /.*/ & /a.*/ ^ /.*/') await self.client0.query('list series /.*/ ^ /a.*/ ^ /.*/') await self.client0.query('alter database set list_limit 5000') with self.assertRaisesRegexp( QueryError, 'Limit must be a value between 0 and 5000 but received: 6000.*'): await self.client0.query( 'list series limit 6000') self.client0.close()
async def run(self): await self.client0.connect() # Create some random series and start 25 insert task parallel series = gen_series(n=10000) tasks = [ asyncio.ensure_future( self.client0.insert_some_series(series, timeout=0, points=self.GEN_POINTS)) for i in range(25) ] await asyncio.gather(*tasks) await self.client0.query('list series /.*/ - /.*/') await self.client0.query('list series /.*/ | /.*/') await self.client0.query('list series /.*/ & /.*/') await self.client0.query('list series /.*/ ^ /.*/') await self.client0.query('list series /.*/ - /a.*/') await self.client0.query('list series /.*/ | /a.*/') await self.client0.query('list series /.*/ & /a.*/') await self.client0.query('list series /.*/ ^ /a.*/') await self.client0.query('list series /.*/ - /a.*/ | /b.*/') await self.client0.query('list series /.*/ | /a.*/ | /b.*/') await self.client0.query('list series /.*/ & /a.*/ | /b.*/') await self.client0.query('list series /.*/ ^ /a.*/ | /b.*/') await self.client0.query('list series /.*/ - /a.*/ | /.*/') await self.client0.query('list series /.*/ | /a.*/ | /.*/') await self.client0.query('list series /.*/ & /a.*/ | /.*/') await self.client0.query('list series /.*/ ^ /a.*/ | /.*/') await self.client0.query('list series /.*/ - /a.*/ - /b.*/') await self.client0.query('list series /.*/ | /a.*/ - /b.*/') await self.client0.query('list series /.*/ & /a.*/ - /b.*/') await self.client0.query('list series /.*/ ^ /a.*/ - /b.*/') await self.client0.query('list series /.*/ - /a.*/ - /.*/') await self.client0.query('list series /.*/ | /a.*/ - /.*/') await self.client0.query('list series /.*/ & /a.*/ - /.*/') await self.client0.query('list series /.*/ ^ /a.*/ - /.*/') await self.client0.query('list series /.*/ - /a.*/ & /b.*/') await self.client0.query('list series /.*/ | /a.*/ & /b.*/') await self.client0.query('list series /.*/ & /a.*/ & /b.*/') await self.client0.query('list series /.*/ ^ /a.*/ & /b.*/') await self.client0.query('list series /.*/ - /a.*/ & /.*/') await self.client0.query('list series /.*/ | /a.*/ & /.*/') await self.client0.query('list series /.*/ & /a.*/ & /.*/') await self.client0.query('list series /.*/ ^ /a.*/ & /.*/') await self.client0.query('list series /.*/ - /a.*/ ^ /b.*/') await self.client0.query('list series /.*/ | /a.*/ ^ /b.*/') await self.client0.query('list series /.*/ & /a.*/ ^ /b.*/') await self.client0.query('list series /.*/ ^ /a.*/ ^ /b.*/') await self.client0.query('list series /.*/ - /a.*/ ^ /.*/') await self.client0.query('list series /.*/ | /a.*/ ^ /.*/') await self.client0.query('list series /.*/ & /a.*/ ^ /.*/') await self.client0.query('list series /.*/ ^ /a.*/ ^ /.*/') self.client0.close()