Rockbox.org home
Downloads
Release release
Dev builds dev builds
Extras extras
themes themes
Documentation
Manual manual
Wiki wiki
Device Status device status
Support
Forums forums
Mailing lists mailing lists
IRC IRC
Development
Bugs bugs
Patches patches
Dev Guide dev guide
Search



Donate

Rockbox Technical Forums


Login with username, password and session length
Home Help Search Staff List Login Register
News:

Welcome to the Rockbox Technical Forums!

+  Rockbox Technical Forums
|-+  Rockbox General
| |-+  Rockbox General Discussion
| | |-+  Dir buffer is Full? (in database)
« previous next »
  • Print
Pages: [1]

Author Topic: Dir buffer is Full? (in database)  (Read 1834 times)

Offline polygonal

  • Member
  • *
  • Posts: 64
Dir buffer is Full? (in database)
« on: August 17, 2007, 01:34:54 PM »
So I was browsing the database and got this message. I choose to load the database to RAM, and the debug screen for database says "RAM: 1424048/1457224 B", which I assume is telling me how much of the RAM allocated for database is used up. It does not seem quite full yet...

Any idea as to what is the problem? Also a pointer to where in the source code is the allocated RAM usage for database set will be very helpful, since I don't quite care about battery usage and thus don't mind if the audio buffer gets smaller.

Thanks
Logged

Offline LambdaCalculus

  • Member
  • *
  • Posts: 2257
  • Dreaming of Turing Machines...
    • The Nostalgia Roadtrip
Re: Dir buffer is Full? (in database)
« Reply #1 on: August 17, 2007, 01:45:23 PM »
Which device are you using, and what SVN build are you using?

Check the SVN build under System > Rockbox info; read the string of numbers that starts with r.
Logged
Former Rockbox dev. Rising from the ashes...

Players: iPod Video /w 128GB SSD mod, H320 /w 128GB SSD mod

Offline polygonal

  • Member
  • *
  • Posts: 64
Re: Dir buffer is Full? (in database)
« Reply #2 on: August 17, 2007, 02:15:16 PM »
ipod video 60GB, with 64MB RAM. I compiled with this morning's updated svn. Don't think there is problem with rockbox though, probably just me having an abnormally big database :) Again, would like to know where I can find the (hardcoded?) allocated memory for database cache in the source code - I am all lost in tagcache.c
« Last Edit: August 17, 2007, 02:35:20 PM by polygonal »
Logged

Offline polygonal

  • Member
  • *
  • Posts: 64
Re: Dir buffer is Full? (in database)
« Reply #3 on: August 18, 2007, 03:27:01 PM »
Okay, I'm searching in the wrong place firstly and secondly the problem is a different one. It has nothing to do with RAM allocation (well, not directly anyway)... The short answer is to bump up the "Max files in browser" setting, explanation is the following:

Normally if the database finds more matching entries than "max files in browse", it simply refuses to sort the list and seems to do nothing else (except setting dirfull = true, but I did not find anything that actually uses that var), so the error message "Dir buffer is full" is not displayed and things seem normal (this only applies to tagcache b/c as far as I can see, dir cache behaves differently). But when the tagnavi format specifies something like %sort and %limit, the database complains because those clauses is not possible without sorting the list first, so the error message is thrown and no entries is retrieved.

My C is rusty at the best, so correct me if I'm mistaken. I can't test my theory right now since I just mass renamed my music files and thus lost all my runtimedb data that originally caused the problem when I use them in tagnavi.

My complain is that the error message is very misleading and unhelpful :(
Logged

Offline Llorean

  • Member
  • *
  • Posts: 12931
Re: Dir buffer is Full? (in database)
« Reply #4 on: August 18, 2007, 03:31:48 PM »
It's actually very literal. It means that the buffer for holding a list of a directory of files is full. Messages have to be short to fit on very limited screens, and it contains a very very succinct description of exactly what went wrong. What it doesn't contain is *why* it went wrong. I don't think this can really be added, because the dir buffer can be full in both the database and the filetree.
Logged

  • Print
Pages: [1]
« previous next »
+  Rockbox Technical Forums
|-+  Rockbox General
| |-+  Rockbox General Discussion
| | |-+  Dir buffer is Full? (in database)
 

  • SMF 2.0.17 | SMF © 2019, Simple Machines
  • Rockbox Privacy Policy
  • XHTML
  • RSS
  • WAP2

Page created in 0.073 seconds with 15 queries.