SQLiteException: disk I/O error
C#
16
sqlite
1
system.data.sqlite
1
Male avatar

Anh Dũng viết ngày 10/11/2015

disk I/O error

Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.Data.SQLite.SQLiteException: disk I/O error
disk I/O error

Cái gì mà disk, rồi I/O mà error nghe ghê quá trời ghê! Thiệt, điều đầu tiên tui nghĩ tới là “xong phim, cái file s3db quá tiện dụng bị lỗi rồi và tất nhiên thì làm gì có backup!”

Vấn đề là ở chỗ mỗi lần thao tác INSERT/ UPDATE với dữ liệu thì SQLite sẽ tạo ra thêm một file dạng db_name.s3db-journal, sau đó thì vì lý do gì đó mà SQLite engine không thể xóa file này được (lý do thường gặp nhất là file s3db không được phân quyền Modify, ai xài shared hosting bị hoài). Dễ thôi, vô Plesk check Full control cho account Default Plesk application pool user (IWAM_plesk(default)) là xong!

Nhưng mà vấn đề là, không hiểu vì lý do gì đó mà lâu lâu lại mất quyền này và nó văng ra lỗi như trên nữa. Sau khi Google thì tui thấy được câu lệnh thần thánh PRAGMA journal_mode = OFF, bạn cứ cho nó chạy trước mỗi lần thực thi các query khác là xong! Tất nhiên là như vầy thì bạn sẽ không còn rollback hoặc atomic commit được và sqlite.org bảo rằng “database file will very likely go corrupt” :D

Kiểu như vầy

SQLiteCommand cmd = new SQLiteCommand();
cmd.CommandText = “PRAGMA journal_mode = OFF; INSERT INTO tblSetupOption(…) VALUES(…);”;
DatabaseConnection.Instance.Value.ExecNonQuery(cmd);

Bình luận


White
{{ comment.user.name }}
Bỏ hay Hay
{{comment.like_count}}
Male avatar
{{ comment_error }}
Hủy
   

Hiển thị thử

Chỉnh sửa

Male avatar

Anh Dũng

2 bài viết.
0 người follow
Kipalog
{{userFollowed ? 'Following' : 'Follow'}}
{{like_count}}

kipalog

{{ comment_count }}

bình luận

{{liked ? "Đã kipalog" : "Kipalog"}}


Male avatar
{{userFollowed ? 'Following' : 'Follow'}}
2 bài viết.
0 người follow

 Đầu mục bài viết

Vẫn còn nữa! x

Kipalog vẫn còn rất nhiều bài viết hay và chủ đề thú vị chờ bạn khám phá!