我目前正在玩SQLAlchemy,这真的很整洁.
为了测试,我创建了一个包含我的图片存档的大表,由SHA1哈希索引(删除重复:-)).这是令人印象深刻的快...
为了好玩,我select *
在生成的SQLite数据库上做了相同的操作:
session = Session()
for p in session.query(Picture):
print(p)
Run Code Online (Sandbox Code Playgroud)
我希望看到哈希滚动,但它只是继续扫描磁盘.与此同时,内存使用率暴涨,几秒后达到1GB.这似乎来自SQLAlchemy的身份地图功能,我认为它只保留弱引用.
有人可以向我解释一下吗?我认为在写出哈希后会收集每个Picture p!?
当我使用TDD实现新功能时,我经常使用快捷方式Shift + Alt + D T
只运行我正在处理的jUnit测试用例(而不是整个测试套件,这需要几分钟).
这将为当前Java源创建新的调试配置并立即运行它.现在我想在启用断言的情况下运行测试(VM选项-ea
).
不幸的是,新调试配置的VM参数开始为空.我总是要进入Debug Configurations...
→ Arguments
并添加-ea
到VM参数输入框.
有没有办法让Eclipse这些参数填充(项目或工作区范围)默认选项?