Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BREAKING CHANGE] Breaking changes in recent file database clean #918

Closed
Incisakura opened this issue Jan 14, 2020 · 17 comments
Closed

[BREAKING CHANGE] Breaking changes in recent file database clean #918

Incisakura opened this issue Jan 14, 2020 · 17 comments

Comments

@Incisakura
Copy link
Contributor

In commit b948525, we cleaned the "file database" in checkJob to store this data to the database.
There may be some issues remained, please do not apply to production directly.
Please help us to fix potential issues.
To update:

  1. Switch to commit after c770185 (some issues fixed)
  2. Stop checkJob in cron(comment it).
  3. Import sql/job_clean.sql to the database.
  4. Backup storage folder.
  5. Run utils/clean_job.php and check the output(utils/processed.json, utils/raw.json, utils/notified.json)

在 commit b948525,我们清理了checkJob中的“文件数据库”并将其数据储存于数据库中。
这可能留下了些许bug,请不要直接应用于生产环境。
请帮助我们修正可能潜在的 bug。
升级方法:

  1. 切换到 c770185 后的 commit (这里修正了一些错误)
  2. 停止cron 中的 checkJob (将其注释掉)
  3. 将 sql/job_clean.sql 导入至数据库
  4. 备份 storage 文件夹
  5. 运行 utils/clean_job.php 并确认其输出 (utils/processed.json, utils/raw.json, utils/notified.json)
@Incisakura
Copy link
Contributor Author

utils/processed.json: Data that processed
utils/raw.json: Raw data(not including traffic_notified)
utils/notified.json: Raw traffic_notified data

Also, you need to check the output in the console.

@Incisakura
Copy link
Contributor Author

After commit 864d90d, please import sql/job_clean.sql again.

@e5sub
Copy link

e5sub commented Jan 15, 2020

Fatal error: Uncaught PDOException: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'offline' in 'field list' in /www/wwwroot//vendor/illuminate/database/Connection.php:478
Stack trace:
#0 /www/wwwroot//vendor/illuminate/database/Connection.php(478): PDO->prepare('update ss_node...') #1 /www/wwwroot//vendor/illuminate/database/Connection.php(722): Illuminate\Database\Connection->Illuminate\Database\{closure}(Object(Illuminate\Database\MySqlConnection), 'update ss_node...', Array)
#2 /www/wwwroot//vendor/illuminate/database/Connection.php(685): Illuminate\Database\Connection->runQueryCallback('update ss_node...', Array, Object(Closure)) #3 /www/wwwroot//vendor/illuminate/database/Connection.php(483): Illuminate\Database\Connection->run('update ss_node...', Array, Object(Closure))
#4 /www/wwwroot//vendor/illuminate/database/Connection.php(426): Illuminate\Database\Connection->affectingStatement('update `ss_node...', Array)
#5 /www in /www/wwwroot//vendor/illuminate/database/Connection.php on line 729

执行utils/clean_job.php报错

@Incisakura
Copy link
Contributor Author

@thaizxj

  1. Import sql/job_clean.sql to the database.

@e5sub
Copy link

e5sub commented Jan 15, 2020

已经导入最新的job_clean.sql了

@xcxnig
Copy link
Contributor

xcxnig commented Jan 15, 2020

@thaizxj 为啥offline 不是online吗

@e5sub
Copy link

e5sub commented Jan 15, 2020

@thaizxj 为啥offline 不是online吗

不知道呀。。。执行了就是offline

@Incisakura
Copy link
Contributor Author

Please delete all existed columns and import sql again.
online name issue may be fixed in a512fd7.

@e5sub
Copy link

e5sub commented Jan 15, 2020

Please delete all existed columns and import sql again.
online name issue may be fixed in a512fd7.

Renew Process START.Renew Process END.

Offline Process START.PHP Warning: unlink(/www/wwwroot//utils/../storage/1offline): No such file or directory in /www/wwwroot//utils/clean_job.php on line 50

Warning: unlink(/www/wwwroot//utils/../storage/1offline): No such file or directory in /www/wwwroot//utils/clean_job.php on line 50
Offline Process successed for node1
PHP Warning: unlink(/www/wwwroot//utils/../storage/2offline): No such file or directory in /www/wwwroot//utils/clean_job.php on line 50

Warning: unlink(/www/wwwroot//utils/../storage/2offline): No such file or directory in /www/wwwroot//utils/clean_job.php on line 50
Offline Process successed for node2
Offline Process END.

Expire Process START.PHP Fatal error: Uncaught PDOException: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'online' in 'field list' in /www/wwwroot//vendor/illuminate/database/Connection.php:478
Stack trace:
#0 /www/wwwroot//vendor/illuminate/database/Connection.php(478): PDO->prepare('update user s...')
#1 /www/wwwroot//vendor/illuminate/database/Connection.php(722): Illuminate\Database\Connection->Illuminate\Database{closure}(Object(Illuminate\Database\MySqlConnection), 'update user s...', Array)
#2 /www/wwwroot//vendor/illuminate/database/Connection.php(685): Illuminate\Database\Connection->runQueryCallback('update user s...', Array, Object(Closure))
#3 /www/wwwroot//vendor/illuminate/database/Connection.php(483): Illuminate\Database\Connection->run('update user s...', Array, Object(Closure))
#4 /www/wwwroot//vendor/illuminate/database/Connection.php(426): Illuminate\Database\Connection->affectingStatement('update user s...', Array)
#5 /www/ in /www/wwwroot//vendor/illuminate/database/Connection.php on line 729

Fatal error: Uncaught PDOException: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'online' in 'field list' in /www/wwwroot//vendor/illuminate/database/Connection.php:478
Stack trace:
#0 /www/wwwroot//vendor/illuminate/database/Connection.php(478): PDO->prepare('update user s...')
#1 /www/wwwroot//vendor/illuminate/database/Connection.php(722): Illuminate\Database\Connection->Illuminate\Database{closure}(Object(Illuminate\Database\MySqlConnection), 'update user s...', Array)
#2 /www/wwwroot//vendor/illuminate/database/Connection.php(685): Illuminate\Database\Connection->runQueryCallback('update user s...', Array, Object(Closure))
#3 /www/wwwroot//vendor/illuminate/database/Connection.php(483): Illuminate\Database\Connection->run('update user s...', Array, Object(Closure))
#4 /www/wwwroot//vendor/illuminate/database/Connection.php(426): Illuminate\Database\Connection->affectingStatement('update user s...', Array)
#5 /www/ in /www/wwwroot//vendor/illuminate/database/Connection.php on line 729

@e5sub
Copy link

e5sub commented Jan 15, 2020

这个目录下storage/1offline的文件名错了 正确的是1.offline

@e5sub
Copy link

e5sub commented Jan 15, 2020

@Incisakura
Column not found: 1054 Unknown column 'online' in 'field list' in /www/wwwroot//vendor/illuminate/database/Connection.php:478
这个还是未解决 #918

@Incisakura
Copy link
Contributor Author

Please delete all existed columns and import sql again.

@e5sub
Copy link

e5sub commented Jan 15, 2020

@Incisakura
这里应该是$user->expired = false;吧
$user->online = false;应该是错误的。user表里没有online列

@Anankke
Copy link
Owner

Anankke commented Feb 12, 2020

@Incisakura is this working?

Incisakura added a commit that referenced this issue Feb 12, 2020
@Incisakura
Copy link
Contributor Author

Everything should be working after 8ebc9eb.

@laurieryayoi
Copy link
Collaborator

Expire Process START.PHP Fatal error: Uncaught PDOException: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'expired' in 'field list' in /data/wwwroot/xxxxxx/vendor/illuminate/database/Connection.php:478

@laurieryayoi
Copy link
Collaborator

expire_notified 不是 expired_notified

@AutisticShark AutisticShark changed the title [!!!Attention!!!]Breaking changes in recent file database clean [BREAKING CHANGE] Breaking changes in recent file database clean Feb 3, 2021
@AutisticShark AutisticShark unpinned this issue Dec 26, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

6 participants