首頁
新聞
功能
下載
開發
支援
論壇
文件
搜尋
關於我們
歡迎光臨,
訪客
. 請先
登入
或
註冊一個帳號
.
三月 29, 2024, 03:55:12 下午
19595
文章 在
3865
主題 由
4580
會員
最新註冊會員:
aa123aa1
首頁
說明
搜尋
登入
註冊
LifeType 中文開發論壇
|
支援
|
安裝與設定
|
blog移機後發表新文章的錯誤訊息
« 上篇主題
下篇主題 »
頁:
[
1
]
2
列印
作者
主題: blog移機後發表新文章的錯誤訊息 (閱讀 39736 次)
ted
一般會員
文章: 103
blog移機後發表新文章的錯誤訊息
«
於:
十月 02, 2006, 01:36:07 下午 »
前幾天將在 A 機器上的 LT 1.0.6 移到 B機器上後,發現在發表文章後會出現下面的錯誤訊息
Fatal error: Uncaught exception 'Exception' with message 'BayesianTokens::updateOccurrencesFromTokensArray: Cannot update occurrences of token 'Redingè'.' in D:\AppServ\www\blog\class\dao\bayesiantokens.class.php:194 Stack trace: #0 D:\AppServ\www\blog\class\dao\bayesiantokens.class.php(164): BayesianTokens->updateOccurrencesFromTokensArray('1', Array, 0, 1, '0', 369) #1 D:\AppServ\www\blog\class\bayesian\bayesianfiltercore.class.php(87): BayesianTokens->incNonSpamOccurrencesFromTokensArray('1', Array, '0', 369) #2 D:\AppServ\www\blog\class\bayesian\bayesianfiltercore.class.php(108): BayesianFilterCore->train('1', '???????????????...', '<p>????????????...', '', '', '', false) #3 D:\AppServ\www\blog\class\action\admin\adminaddpostaction.class.php(122): BayesianFilterCore->trainWithArticle(Object(Article)) #4 D:\AppServ\www\blog\class\controller\controller.class.php(309): AdminAddPostAction->perform() #5 D:\AppServ\www\blog\admin.php(39): Controller->process(Array, 'op') #6 {main} thrown in D:\AppServ\www\blog\class\dao\bayesiantokens.class.php on line 194
查看後發現文章是在存成功,RSS reader也收的到此篇新文章
但 blog 首頁卻不會出現,但從文章分類或搜尋都可以找的到
當再次編輯此文章,再存檔;或者先存成草稿,然後再發表 就會正常,沒有錯誤
我移機的大致作法是:先在B 機器裝上一樣版本的 LT,然後把 A機器上的 plugin,template,及 mysql的 data檔案 copy 至B 機器
雖然A,B二台的 php 及 mysql, apache版本不同,但我都把my.ini 或 php.ini及 apache 的設定盡量調成一致
新的B機器
-----------------------------------------
Windows server 2003
Apache Web Server Version 2.2.2
PHP Script Language Version 5.1.4
MySQL Database Version 5.0.22
舊的 A機器
-------------------------------------
Windows 2000 server
Apache Web Server Version 2.0.54
PHP Script Language Version 5.0.4
MySQL Database Version 4.1.12a
請問可能是那邊造成的問題,或者我copy 錯了什麼檔案?
謝謝
已記錄
OS: windows server 2003
Apache Web Server Version 2.2.2
PHP Script Language Version 5.1.4
MySQL Database Version 5.0.22
eppies
新手見習
文章: 12
Re: blog移機後發表新文章的錯誤訊息
«
回覆文章 #1 於:
十月 03, 2006, 12:33:38 上午 »
我的blog昨天開始也出現這問題
po了新文章後
就出現
Exception message: BayesianTokens::updateOccurrencesFromTokensArray: Cannot update occurrences of token 'Topic#tes'.
Error code: 0
-- Backtrace --
/var/www/vhosts/apple.pro/httpdocs/class/dao/bayesiantokens.class.php(194): throw
/var/www/vhosts/apple.pro/httpdocs/class/dao/bayesiantokens.class.php(164): bayesiantokens.updateoccurrencesfromtokensarray
/var/www/vhosts/apple.pro/httpdocs/class/bayesian/bayesianfiltercore.class.php(87): bayesiantokens.incnonspamoccurrencesfromtokensarray
/var/www/vhosts/apple.pro/httpdocs/class/bayesian/bayesianfiltercore.class.php(108): bayesianfiltercore.train
/var/www/vhosts/apple.pro/httpdocs/class/action/admin/adminaddpostaction.class.php(122): bayesianfiltercore.trainwitharticle
/var/www/vhosts/apple.pro/httpdocs/class/controller/controller.class.php(309): adminaddpostaction.perform
/var/www/vhosts/apple.pro/httpdocs/admin.php(39): admincontroller.process
但在首頁跟文章又會正常出現
昨天開始之前所有的正常回應都不見了
也無法在blog上回應
回應的話
會出現
Exception message: BayesianTokens::updateOccurrencesFromTokensArray: Cannot update occurrences of token 'asfasdf'.
Error code: 0
-- Backtrace --
/var/www/vhosts/apple.pro/httpdocs/class/dao/bayesiantokens.class.php(194): throw
/var/www/vhosts/apple.pro/httpdocs/class/dao/bayesiantokens.class.php(164): bayesiantokens.updateoccurrencesfromtokensarray
/var/www/vhosts/apple.pro/httpdocs/class/bayesian/bayesianfiltercore.class.php(87): bayesiantokens.incnonspamoccurrencesfromtokensarray
/var/www/vhosts/apple.pro/httpdocs/class/security/bayesianfilter.class.php(113): bayesianfiltercore.train
/var/www/vhosts/apple.pro/httpdocs/class/security/pipeline.class.php(172): bayesianfilter.filter
/var/www/vhosts/apple.pro/httpdocs/class/action/blogaction.class.php(70): pipeline.process
/var/www/vhosts/apple.pro/httpdocs/class/action/addcommentaction.class.php(46): addcommentaction.blogaction
/var/www/vhosts/apple.pro/httpdocs/class/controller/controller.class.php(303): addcommentaction.addcommentaction
/var/www/vhosts/apple.pro/httpdocs/index.php(42): blogcontroller.process
登入admin後
原本會出現的最新回應跟右邊文章總數、回應、瀏覽次數統計全部不見了
我的blog目前有七百多個會員
每個blog都有這問題
從今年一月開站都沒出現過這類問題
希望站上大大能給小弟一點建議
看看到底哪邊出了問題
不勝感激
已記錄
eppies
新手見習
文章: 12
Re: blog移機後發表新文章的錯誤訊息
«
回覆文章 #2 於:
十月 04, 2006, 09:30:20 上午 »
哎~
剛剛去英文官網論壇上找
似乎也找不到解決的方法
已記錄
markwu
系統管理員
超級會員
文章: 3928
Mark Wu
Re: blog移機後發表新文章的錯誤訊息
«
回覆文章 #3 於:
十月 04, 2006, 10:34:39 上午 »
把 ./tmp 下的 sql_error.log 貼上來,看起來是寫入資料庫時發生錯誤。
Mark
已記錄
問問題前,麻煩請先參考
LifeType 中文文件計畫
與
如何在 LifeType 中文開發論壇發問
。
eppies
新手見習
文章: 12
Re: blog移機後發表新文章的錯誤訊息
«
回覆文章 #4 於:
十月 04, 2006, 11:14:58 上午 »
謝謝Mark的回應
不過...sql_error.log 竟然有1.36GB
看來是貼不上來了
再請問一下mark
那這個過度肥大的log檔
可以del嗎
我的主機是放在godaddy
也不過租10G
這log檔就1G多
很想把它del掉...
«
最後編輯時間: 十月 04, 2006, 11:19:18 上午 由 eppies
»
已記錄
ted
一般會員
文章: 103
Re: blog移機後發表新文章的錯誤訊息
«
回覆文章 #5 於:
十月 04, 2006, 11:15:59 上午 »
我的 sql_error.log 內容見附件,
有一些訊息是 Data too long for column 'text' at row 1
是文章太長的關係嗎? 我沒有去變更過MySQL 的資料庫欄位呀
因錯誤訊息很長, 我附上檔案, 以方便各位查看
煩請幫忙看看,謝謝
ted
已記錄
OS: windows server 2003
Apache Web Server Version 2.2.2
PHP Script Language Version 5.1.4
MySQL Database Version 5.0.22
panying
新手見習
文章: 39
Re: blog移機後發表新文章的錯誤訊息
«
回覆文章 #6 於:
十月 04, 2006, 01:14:19 下午 »
INSERT INTO plog_bayesian_tokens (blog_id, token, spam_occurrences, nonspam_occurrences, prob) VALUES ('2', 'URL?, '0', '1', '0.01')
这个插入数据是乱码...
已記錄
TechAdmin of
Pact of Shadow Guild Website
My blog
EK's Nest
panying
新手見習
文章: 39
Re: blog移機後發表新文章的錯誤訊息
«
回覆文章 #7 於:
十月 04, 2006, 01:22:15 下午 »
基于你使用的是Mysql5的版本,建议将MySql5的Strict Mode参数移去,说不定能达到效果..
已記錄
TechAdmin of
Pact of Shadow Guild Website
My blog
EK's Nest
ted
一般會員
文章: 103
Re: blog移機後發表新文章的錯誤訊息
«
回覆文章 #8 於:
十月 11, 2006, 11:50:58 上午 »
如果以 utf-8 的編碼來看 err log 的話, 倒沒有亂碼的問題
02-10-2006 02:23:55 ERROR - The following query =
INSERT INTO plog_bayesian_tokens (blog_id, token, spam_occurrences, nonspam_occurrences, prob) VALUES ('2', 'URL', '0', '1', '0.01')
generated the following error message =
Data too long for column 'token' at row 1
出現 token 的值太長,超過 plog_bayesian_tokens 裏 token 這毎欄位的長度,
但以此例來看, 'URL' 跟本沒有超過 token var(100) 的長度?
目前在新增10篇文章,但概有8成會有此問題
我只好暫時把 blog\class\dao 下的 bayesiantokens.class.php 中的 第 192行起的幾行先給 mark 起來
至少這樣不會再有此情形,且程式可以繼續下去, 才不會文章進去了,但 blog 首頁却沒出現
if (!$result)
{
throw(new Exception("BayesianTokens::updateOccurrencesFromTokensArray: Cannot update occurrences of token '$token'."));
die();
}
只是不曉得這樣改會不會有其他的影響就是了
已記錄
OS: windows server 2003
Apache Web Server Version 2.2.2
PHP Script Language Version 5.1.4
MySQL Database Version 5.0.22
panying
新手見習
文章: 39
Re: blog移機後發表新文章的錯誤訊息
«
回覆文章 #9 於:
十月 29, 2006, 09:11:48 下午 »
直接看16进制代码的话,可以看见
插入的'URL'其实是 27 55 52 4C E8 27,嗯,当然在我这里显示就是'URL?
应该是mysql 认为E8在SQL里是一个非法字符吧,所以报错了?
已記錄
TechAdmin of
Pact of Shadow Guild Website
My blog
EK's Nest
mouson
新手見習
文章: 22
Re: blog移機後發表新文章的錯誤訊息
«
回覆文章 #10 於:
五月 08, 2007, 12:23:59 上午 »
不好意思! 我再次的發生類似的事情!
我的sql_error.log的內容如下
程式碼:
D:\wwwroot\BlogWebSite\class\logger\logger\logger.class.php(157): PatternLayout.format
D:\wwwroot\BlogWebSite\class\logger\logger\logger.class.php(137): Logger.log
D:\wwwroot\BlogWebSite\class\dao\model.class.php(142): Logger.error
D:\wwwroot\BlogWebSite\class\dao\bayesiantokens.class.php(306): Model.Execute
D:\wwwroot\BlogWebSite\class\dao\bayesiantokens.class.php(262): BayesianTokens.insert
D:\wwwroot\BlogWebSite\class\dao\bayesiantokens.class.php(193): BayesianTokens.updateOccurrences
D:\wwwroot\BlogWebSite\class\dao\bayesiantokens.class.php(167): BayesianTokens.updateOccurrencesFromTokensArray
D:\wwwroot\BlogWebSite\class\bayesian\bayesianfiltercore.class.php(87): BayesianTokens.incNonSpamOccurrencesFromTokensArray
D:\wwwroot\BlogWebSite\class\bayesian\bayesianfiltercore.class.php(108): BayesianFilterCore.train
D:\wwwroot\BlogWebSite\class\action\admin\adminaddpostaction.class.php(157): BayesianFilterCore.trainWithArticle
D:\wwwroot\BlogWebSite\class\controller\controller.class.php(347): AdminAddPostAction.perform
D:\wwwroot\BlogWebSite\admin.php(43): Controller.process
08-05-2007 01:21:38 ERROR - The following query =
INSERT INTO lt_bayesian_tokens (blog_id, token, spam_occurrences, nonspam_occurrences, prob) VALUES ('2', '20?, '0', '1', '0.01')generated the following error message =
Data too long for column 'token' at row 1
只要是發表中文的文章就會發生上述的狀況
不知道是什麼原因!
照著ted 所說的方法的確可以避免
但看樣子似乎治標不治本,不知道大家如何解學上述的問題呢?
已記錄
個人部落格
http://MrMo.cc/mouson
ted
一般會員
文章: 103
Re: blog移機後發表新文章的錯誤訊息
«
回覆文章 #11 於:
五月 08, 2007, 12:38:49 下午 »
今天在另一台測試的機器上發現,
如果我沒有把下面這段給 mark 掉,當迴響中有全型的文字時 (如< 或[ ...) ,也會有一樣的錯誤
if (!$result)
{
throw(new Exception("BayesianTokens::updateOccurrencesFromTokensArray: Cannot update occurrences of token '$token'."));
die();
}
已記錄
OS: windows server 2003
Apache Web Server Version 2.2.2
PHP Script Language Version 5.1.4
MySQL Database Version 5.0.22
markwu
系統管理員
超級會員
文章: 3928
Mark Wu
Re: blog移機後發表新文章的錯誤訊息
«
回覆文章 #12 於:
七月 02, 2007, 10:35:49 上午 »
其實不是這個原因,因為 Baysian 對中文切字的問題,是本來就有的。因為他是以 stop words 切字。
這個問題的原因是 mysql5 的 strict mode,造成在insert 切完後的結果到資料欄位時發生錯誤。
我建議先將 mysql5 的 strict mode 拿掉。
Mark
已記錄
問問題前,麻煩請先參考
LifeType 中文文件計畫
與
如何在 LifeType 中文開發論壇發問
。
mouson
新手見習
文章: 22
Re: blog移機後發表新文章的錯誤訊息
«
回覆文章 #13 於:
十月 23, 2007, 11:33:15 上午 »
mark您好
跟您請教一個問題
您所說的
拿掉mysql5的strict mode
是不是就像以下操作一下
把my.ini中的sql-mode裡的STRICT_TRANS_TABLES去除就可以了呢?
#sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
sql-mode="NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
還是一定要透過mysql的MySQL Server Instance Config Wizard ?
會再次的這樣問
主要是因為日前已經將bayesiantokenizer.class.php第六行的stop words回復到原本的狀態
並且如我上述的修改sql-mode
結果在發表文章的時候
依然會出現如下的錯誤訊息。
程式碼:
Fatal error:
Uncaught exception 'Exception' with message 'BayesianTokens::updateOccurrencesFromTokensArray: Cannot update occurrences of token '!!?.' in D:\wwwroot\BetaWebSite\class\dao\bayesiantokens.class.php:197 Stack trace: #0
D:\wwwroot\BetaWebSite\class\dao\bayesiantokens.class.php(167): BayesianTokens->updateOccurrencesFromTokensArray('3', Array, 0, 1, '3', 32) #1
D:\wwwroot\BetaWebSite\class\bayesian\bayesianfiltercore.class.php(87): BayesianTokens->incNonSpamOccurrencesFromTokensArray('3', Array, '3', 32) #2
D:\wwwroot\BetaWebSite\class\bayesian\bayesianfiltercore.class.php(108): BayesianFilterCore->train('3', '??????strict mo...', '<p>????????????...', '', '', '', false) #3
D:\wwwroot\BetaWebSite\class\action\admin\adminaddpostaction.class.php(158): BayesianFilterCore->trainWithArticle(Object(Article)) #4
D:\wwwroot\BetaWebSite\class\controller\controller.class.php(347): AdminAddPostAction->perform() #5
D:\wwwroot\BetaWebSite\admin.php(43): Controller->process(Array) #6
{main} thrown in D:\wwwroot\BetaWebSite\class\dao\bayesiantokens.class.php on line 197
不好意思 要再麻煩您!!
已記錄
個人部落格
http://MrMo.cc/mouson
markwu
系統管理員
超級會員
文章: 3928
Mark Wu
Re: blog移機後發表新文章的錯誤訊息
«
回覆文章 #14 於:
十一月 02, 2007, 02:43:16 下午 »
ㄟ,怪了,我記得這個 bug 我已經修復了,可以請問你是用那一版的 LifeType嗎?
Mark
已記錄
問問題前,麻煩請先參考
LifeType 中文文件計畫
與
如何在 LifeType 中文開發論壇發問
。
頁:
[
1
]
2
列印
LifeType 中文開發論壇
|
支援
|
安裝與設定
|
blog移機後發表新文章的錯誤訊息
« 上篇主題
下篇主題 »
前往:
請選擇目的地:
-----------------------------
站務
-----------------------------
=> 站務公告
=> 站務建議
=> 帳號與文章刪除
-----------------------------
支援
-----------------------------
=> 安裝與設定
=> 使用與操作
=> 虛擬主機討論
=> Instant LifeType 專區
===> 安裝與設定精華區
===> 使用與操作精華區
===> 虛擬主機討論精華區
===> 虛擬主機商自我推薦區
===> Instant LifeType 精華區
-----------------------------
開發
-----------------------------
=> 外掛程式
=> 模版設計
=> 核心補強
=> 手冊文件
=> 中文相關
===> 外掛程式精華區
===> 模版發表
===> 模版設計精華區
===> 核心補強精華區
===> 手冊文件精華區
===> 中文相關精華區
-----------------------------
測試
-----------------------------
=> LifeType 1.0 測試
=> LifeType 1.1 測試
-----------------------------
部落格應用
-----------------------------
=> 教育部落格
-----------------------------
建議
-----------------------------
=> 要求與建議
=> 發表與交流
=> 網誌文化與業界動態
Powered by SMF 1.1.6
|
SMF © 2006-2008, Simple Machines LLC
載入...