2011-10-20 209 views
0

我有一臺服務器運行最新版本的Sphinx(2.0.1-id64-beta),並試圖通過Java應用程序訪問其SphinxQL接口,使用最新的J /連接器JDBC驅動程序(5.1.18)。每當嘗試建立連接時,進程將無限期地在套接字讀取上阻塞。調用堆棧如下所示:J /連接器無法通過SphinxQL連接到Sphinx服務器

(StackExchange告訴我,我不允許直接發佈圖片,由於我的信譽級別。)

圖片:http://dunkelhaft.dyndns-server.com/tmp/callstack.png

它看起來像JDBC驅動程序正在等待Sphinx服務器提供一些永不到來的消息。值得注意的是,如果我使用諸如MySQL命令行客戶端或Sequel Pro或簡單的PHP腳本之類的東西,那麼MySQL接口可以毫無問題地工作,這讓我懷疑這個問題是Sphinx服務器和服務器之間的某種協議差異JDBC協議。

任何想法?

回答

0

你不是唯一有這個問題的人。我沒有一個直接的解決方案,只是一些骯髒的解決方法,讓事情工作 - 看看here [簡而言之 - 你將不得不使用舊的連接器/ j,並需要在sphinx 2.0.3代碼中做一些小改動]。還有一個給獅身人面像開發者的錯誤報告:#959

編輯。似乎將* mysql_version_string = 5.0.37 *添加到sphinx.conf should solve the problem