Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
def test_multiprocessing_safety(mongo_host, library_name):
# Create/initialize library at the parent process, then spawn children, and start them aligned in time
total_processes = 64
total_writes_per_child = 100
register_get_auth_hook(my_auth_hook)
global MY_ARCTIC
MY_ARCTIC = Arctic(mongo_host=mongo_host)
MY_ARCTIC.initialize_library(library_name, VERSION_STORE)
assert isinstance(MY_ARCTIC.get_library(library_name), VersionStore)
processes = [Process(target=f, args=(library_name, total_writes_per_child, True)) for _ in range(total_processes)]
for p in processes:
p.start()
for p in processes:
p.join()
for p in processes:
assert p.exitcode == 0
assert isinstance(MY_ARCTIC.get_library(library_name), VersionStore)
def test_enable_sharding():
arctic_lib = create_autospec(ArcticLibraryBinding)
arctic_lib.arctic = create_autospec(Arctic)
with patch('arctic.store.bson_store.enable_sharding', autospec=True) as enable_sharding:
arctic_lib.get_top_level_collection.return_value.database.create_collection.__name__ = 'some_name'
arctic_lib.get_top_level_collection.return_value.database.collection_names.__name__ = 'some_name'
bsons = BSONStore(arctic_lib)
bsons.enable_sharding()
# Check we always set the sharding to be hashed.
assert enable_sharding.call_args_list == [call(arctic_lib.arctic, arctic_lib.get_name(), hashed=True, key='_id')]
Stock,
Exchange,
)
from sqlalchemy.orm import scoped_session
from sqlalchemy.orm import sessionmaker
from pystock.models.money import Money, Currency
from sqlalchemy.engine import create_engine
from pystock.models import Base
if __name__ == "__main__":
logger = logging.getLogger('analyzer')
logger = logging.getLogger('analyzerstrategies')
init_logging(logger, 'debug')
store = Arctic('localhost')
config = {
'host': 'localhost',
'port': 6379,
'db': 0,
}
redis_conn = StrictRedis(**config)
engine = create_engine('sqlite://')
session_factory = sessionmaker(bind=engine)
Session = scoped_session(session_factory)
session = Session()
Base.metadata.create_all(engine)
usd = Currency(name='Dollar', code='USD')
nasdaq = Exchange(name='NASDAQ', currency=usd, code='NASDAQ4')
stock_ebay = Stock(symbol='EBAY', exchange=nasdaq, ISIN='US2786421030', description='')
def init():
global db
db = Arctic('localhost')
updateKeys(masterKey)
from arctic import Arctic
import pymongo
socketTimeoutMS = 30 * 1000
fname = os.path.basename(fname).replace('.', '_')
self.logger.info('Load MongoDB library: ' + fname)
if username is not None and password is not None:
c = pymongo.MongoClient(
host="mongodb://" + username + ":" + password + "@" + str(db_server) + ":" + str(db_port),
connect=False) # , username=username, password=password)
else:
c = pymongo.MongoClient(host="mongodb://" + str(db_server) + ":" + str(db_port), connect=False)
store = Arctic(c, socketTimeoutMS=socketTimeoutMS, serverSelectionTimeoutMS=socketTimeoutMS,
connectTimeoutMS=socketTimeoutMS)
store.delete_library(fname)
c.close()
self.logger.info("Deleted MongoDB library: " + fname)
elif (engine == 'hdf5'):
h5_filename = self.get_h5_filename(fname)
# delete the old copy
try:
os.remove(h5_filename)
except:
pass
import time
from six.moves import xrange
import arctic._compression as aclz4
from arctic import Arctic
from arctic.async import ASYNC_ARCTIC, async_arctic_submit, async_wait_requests
from tests.integration.chunkstore.test_utils import create_test_data
a = Arctic('localhost:27017')
library_name = 'asyncbench.test'
TEST_DATA_CACHE = {}
def get_cached_random_df(num_chunks):
if num_chunks < 1:
raise ValueError("num_chunks must be > 1")
if num_chunks not in TEST_DATA_CACHE:
TEST_DATA_CACHE[num_chunks] = get_random_df(num_chunks)
return TEST_DATA_CACHE[num_chunks]
def get_random_df(num_chunks):
num_chunks = num_chunks
data_to_write = create_test_data(size=25000, index=True, multiindex=False, random_data=True, random_ids=True,
def get_store():
"""
get Arctic store connection
:return: arctic connection
"""
mongo_host = conf.MONGO_HOST
store = arctic.Arctic(mongo_host)
return store
def sync():
store = Arctic('localhost')
store.initialize_library('Bitmex')
library = store['Bitmex']
df = get_candle_pandas()
print (df)
library.write('XBTUSD', df, metadata={'source': 'Bitmex'})