[ / / / / / / / / / ] [ dir / cute / egy / fur / kind / kpop / miku / waifuist / wooo ]

/hydrus/ - Hydrus Network

Bug reports, feature requests, and other discussion for the hydrus network.

Catalog

Name
Email
Subject
Comment *
File
* = required field[▶ Show post options & limits]
Confused? See the FAQ.
Embed
(replaces files and can be used instead)
Options
Password (For file and post deletion.)

Allowed file types:jpg, jpeg, gif, png, webm, mp4, swf, pdf
Max filesize is 12 MB.
Max image dimensions are 10000 x 10000.
You may upload 5 per post.


New user? Start here ---> http://hydrusnetwork.github.io/hydrus/

Current to-do list has: 714 items

Current big job: finishing off duplicate search/filtering workflow


File: 16bf8bd546e0730⋯.png (620.88 KB, 800x1368, 100:171, 16bf8bd546e0730df59e9a94be….png)

9b0b96 No.4978

Hey!

For a month or two now, it's been impossible to update the public tag repository. (everything works fine, apart from that.)

When it tries to update, it eventually fails with this error / traceback:

[code]

DBException

IOError: [Errno 5] Input/output error

Traceback (most recent call last):

File "/opt/hydrus/include/ClientData.py", line 2150, in Sync

loaded_into_disk_cache = HydrusGlobals.client_controller.Read( 'load_into_disk_cache', stop_time = stop_time )

File "/opt/hydrus/include/HydrusController.py", line 258, in Read

def Read( self, action, *args, kwargs ): return self._Read( action, *args, kwargs )

File "/opt/hydrus/include/HydrusController.py", line 91, in _Read

result = self._db.Read( action, HC.HIGH_PRIORITY, *args, **kwargs )

File "/opt/hydrus/include/HydrusDB.py", line 655, in Read

return job.GetResult()

File "/opt/hydrus/include/HydrusData.py", line 1980, in GetResult

raise e

DBException: IOError: [Errno 5] Input/output error

Database Traceback (most recent call last):

File "/opt/hydrus/include/HydrusDB.py", line 468, in _ProcessJob

if job_type in ( 'read', 'read_write' ): result = self._Read( action, *args, **kwargs )

File "/opt/hydrus/include/ClientDB.py", line 7168, in _Read

elif action == 'load_into_disk_cache': result = self._LoadIntoDiskCache( *args, **kwargs )

File "/opt/hydrus/include/ClientDB.py", line 6220, in _LoadIntoDiskCache

while f.read( HC.READ_BLOCK_SIZE ) != '':

IOError: [Errno 5] Input/output error

Database Traceback (most recent call last):

File "/opt/hydrus/include/HydrusDB.py", line 468, in _ProcessJob

if job_type in ( 'read', 'read_write' ): result = self._Read( action, *args, **kwargs )

File "/opt/hydrus/include/ClientDB.py", line 7168, in _Read

elif action == 'load_into_disk_cache': result = self._LoadIntoDiskCache( *args, **kwargs )

File "/opt/hydrus/include/ClientDB.py", line 6220, in _LoadIntoDiskCache

while f.read( HC.READ_BLOCK_SIZE ) != '':

IOError: [Errno 5] Input/output error

/[code]

Anyone knows what might cause this?

Thanks in advance!

ca0c4c No.4985

Have you updated your client recently? Some recent updates switched the PTR to https and require a newer version of the client. Try downloading and installing the newest version.


b9cb2f No.4996

>>4985

Yeah, I'm on the latest version of the client, normally… hydrus client 240, using network version 17.


b58c56 No.5006

File: d0a4f0709909764⋯.jpg (162.55 KB, 679x1000, 679:1000, d0a4f070990976460266a72f66….jpg)

This could be a serious error with your hard drive.

What's happening here is before a sync occurs, hydrus reads its database into memory. This is very simple–it just reads the db file one block at a time so your OS can automatically cache it. The only typical way this read call would fail is if the hard drive can't serve the data. Your error IOError, which means Input/Output error, basically means the same thing. Your OS is reporting to hydrus that it just can't figure out the next block of data.

So, I suspect your hard drive has a blip in it. This could be trivial and fixable–a misplaced index due to a previous power cut–or a big problem–like an unrecoverable sector or even a drive on its last legs.

First, please back everything on that drive up as much as you can. You may not be able to back up all your client*.db files as this problem will probably get triggered again by a file copy action in in Windows Explorer or whatever. If you have an existing backup of your hydrus dir, hang onto it for now and don't overwrite it.

Then check out 'help my db is broke.txt' in the install_dir/db directory.

Once you have a chkdsk (or Linux/OS X alternative) done and maybe tried a clone, let me know how it went. If you have a broken index, I can figure out some sql to rebuild it or advise you the best way to regenerate whatever you need to.

If it helps, you should be able to induce this error by going help->debug->load whole db into disk cache.


21796f No.5018

>>5006

Doing help->debug->load whole db into disk cache doesn't actually output any error message.

I did a PRAGMA integrity_check; on client.db, but it simply returned "OK".

I backed up, but I'm not sure if this is really a hard drive problem…


21796f No.5019

>>5006

As for disk checking, Arch Linux automatically does a fsck check every system boot, so I don't think I need to do anything on that front. (that's what I read googling about it, though I could be wrong.)


b58c56 No.5038

File: fd3a857a352c879⋯.jpg (265.26 KB, 902x1289, 902:1289, fd3a857a352c879a862b84be50….jpg)

>>5018

>>5019

That's odd! The disk cache population from the help menu is the same code being called by the repo sync. I am not sure why one call would work but the other wouldn't.

If you do the disk cache population from the debug menu and then go help->debug->force idle mode, this should trigger a repo sync. As the db is already in your disk cache, the IOError shouldn't happen. Does it still give you a problem?

I looked into the 5 error code a little more. It can apparently happen due to bad file permissions or when the drive is unusual–like a network drive or ramdisk. Or it can come up when a process tries to print to a terminal that has been closed, that sort of thing. I'm guessing your file permissions are fine because the client boots, but is there anything unusual about the connection between your drive and your machine? Something that might desync how hydrus talks to it?

I'm guessing you are on a totally normal drive and would have said otherwise, but I'm struggling to think what this is if not a hardware issue–I'm literally just reading sequential data from the drive. I read it as fast as possible–do you think your drive might ever complain about receiving requests too fast? Ever had a problem like that before?

There's an integrity check in the client that'll check all four db files–do you still get no problems if you run that? It is under database->check->db integrity.




[Return][Go to top][Catalog][Post a Reply]
Delete Post [ ]
[]
[ / / / / / / / / / ] [ dir / cute / egy / fur / kind / kpop / miku / waifuist / wooo ]