2013-10-14 205 views
1

我正在開發一個Extjs 4應用程序,我使用從GUI(文本框,組合框值等)發送的參數執行查詢。 查詢使用SQLAlchemy構建。我在本地主機上使用MySQL數據庫。SQLAlchemy查詢結果超時

我執行的查詢意味着返回大數據。我的問題是,當我直接在HeidiSQL上執行查詢時,它在0.6秒內執行,但Extjs(在chrome上)會產生超時並且沒有顯示結果。

這是查詢。當我執行它時,它應該返回300.000行。

SELECT /*ALL OF THE COLUMNS OF MY TWO TABLES, GENERATED DYNAMICALLY WITH SQLAlchemy*/ 
FROM bl, `CR` 
WHERE `CR`.`Category` IN ('Failure') AND bl.severity_logged IN ('4_minor') AND bl.product_logged = 'x' AND bl.`productRelease_logged` IN ('0.1', '6.2', '6.4', '6.7'); 

可能是什麼問題? 這是瀏覽器緩存問題嗎?

編輯:這是我的Python腳本w/SQLAlchemy。

engine = create_engine(
      "mysql://:@localhost/test", 
      isolation_level="READ UNCOMMITTED" 
     ) 
meta = MetaData(bind=engine) 
meta.reflect(bind=engine) 
cr = meta.tables['cr'] 
bl = meta.tables['bl'] 

session = create_session(bind=engine) 
...#I create filters based on the GUI values 
test_query = session.query(metric_table_object,cr).filter(all_filters) #I then create the query 
result_dict = [u.__dict__ for u in test_query.all()] #I store the query result into a dict 
print result_dict 
+0

您確定要關閉所有以前的會話嗎?使用session.close(),如果你可以打印你的代碼,它會容易得多。 –

+0

我不使用session.close(),我應該把它放在哪裏?直接聲明'session = create_session(bind = engine)'後? – salamey

+0

我用Python代碼更新了我的問題。 – salamey

回答