Coder Social home page Coder Social logo

Comments (10)

KarlStraussberger avatar KarlStraussberger commented on June 9, 2024

Can you try to capture some more info about the broken line. Running with gdb, you can print the stack with bt

from gerbera.

udippel avatar udippel commented on June 9, 2024

from gerbera.

udippel avatar udippel commented on June 9, 2024
023-12-25 13:28:43.603  trace: [sqlite_database.cc:242] select(): Adding select to Queue: SELECT "item_id", "property_name", "property_value"  FROM "mt_metadata" WHERE "item_id" = 23
2023-12-25 13:28:43.603  trace: [thread_runner.h:134] lockGuard(): ThreadRunner: Guard for SQLiteThread - addTask SelectTask
2023-12-25 13:28:43.603  trace: [thread_runner.h:124] notify(): ThreadRunner: Notifying SQLiteThread
2023-12-25 13:28:43.603  trace: [sl_task.cc:120] run(): Running: SELECT "item_id", "property_name", "property_value"  FROM "mt_metadata" WHERE "item_id" = 23
2023-12-25 13:28:43.603  trace: [sql_database.cc:2839] retrieveResourcesForObject(): SQLDatabase::retrieveResourcesForObject SELECT "item_id", "res_id", "handlerType", "purpose", "options", "parameters", "size", "duration", "bitrate", "sampleFrequency", "nrAudioChannels", "resolution", "colorDepth", "protocolInfo", "resFile", "type", "fanArtObject", "fanArtResource", "bitsPerSample", "dc:language", "sec:acodec", "sec:vcodec", "format"  FROM "grb_cds_resource" WHERE "item_id" = 23 ORDER BY "res_id"
2023-12-25 13:28:43.603  trace: [sqlite_database.cc:242] select(): Adding select to Queue: SELECT "item_id", "res_id", "handlerType", "purpose", "options", "parameters", "size", "duration", "bitrate", "sampleFrequency", "nrAudioChannels", "resolution", "colorDepth", "protocolInfo", "resFile", "type", "fanArtObject", "fanArtResource", "bitsPerSample", "dc:language", "sec:acodec", "sec:vcodec", "format"  FROM "grb_cds_resource" WHERE "item_id" = 23 ORDER BY "res_id"
2023-12-25 13:28:43.603  trace: [thread_runner.h:134] lockGuard(): ThreadRunner: Guard for SQLiteThread - addTask SelectTask
2023-12-25 13:28:43.603  trace: [thread_runner.h:124] notify(): ThreadRunner: Notifying SQLiteThread
2023-12-25 13:28:43.603  trace: [sl_task.cc:120] run(): Running: SELECT "item_id", "res_id", "handlerType", "purpose", "options", "parameters", "size", "duration", "bitrate", "sampleFrequency", "nrAudioChannels", "resolution", "colorDepth", "protocolInfo", "resFile", "type", "fanArtObject", "fanArtResource", "bitsPerSample", "dc:language", "sec:acodec", "sec:vcodec", "format"  FROM "grb_cds_resource" WHERE "item_id" = 23 ORDER BY "res_id"
2023-12-25 13:28:43.604  trace: [import_service.cc:732] addContainerTree(): Loaded container chain item /Audio/Composers -> true
2023-12-25 13:28:43.604  trace: [import_service.cc:701] addContainerTree(): Received container chain item /Audio
2023-12-25 13:28:43.604  trace: [import_service.cc:701] addContainerTree(): Received container chain item /Audio/Year
2023-12-25 13:28:43.604  trace: [sqlite_database.cc:242] select(): Adding select to Queue: SELECT "f"."id", "f"."ref_id", "f"."parent_id", "f"."object_type", "f"."upnp_class", "f"."dc_title", "f"."location", "f"."location_hash", "f"."auxdata", "f"."update_id", "f"."mime_type", "f"."flags", "f"."part_number", "f"."track_number", "f"."service_id", "f"."last_modified", "f"."last_updated", "rf"."upnp_class", "rf"."location", "rf"."auxdata", "rf"."mime_type", "rf"."service_id", "as"."persistent" FROM "mt_cds_object" "f" LEFT JOIN "mt_cds_object" "rf" ON "f"."ref_id" = "rf"."id" LEFT JOIN "mt_autoscan" "as" ON "as"."obj_id" = "f"."id"  WHERE "f"."location_hash" = 3216568682 AND "f"."location" = 'V/Audio/Year' AND "f"."ref_id" IS NULL LIMIT 1
2023-12-25 13:28:43.604  trace: [thread_runner.h:134] lockGuard(): ThreadRunner: Guard for SQLiteThread - addTask SelectTask
2023-12-25 13:28:43.604  trace: [thread_runner.h:124] notify(): ThreadRunner: Notifying SQLiteThread
2023-12-25 13:28:43.604  trace: [sl_task.cc:120] run(): Running: SELECT "f"."id", "f"."ref_id", "f"."parent_id", "f"."object_type", "f"."upnp_class", "f"."dc_title", "f"."location", "f"."location_hash", "f"."auxdata", "f"."update_id", "f"."mime_type", "f"."flags", "f"."part_number", "f"."track_number", "f"."service_id", "f"."last_modified", "f"."last_updated", "rf"."upnp_class", "rf"."location", "rf"."auxdata", "rf"."mime_type", "rf"."service_id", "as"."persistent" FROM "mt_cds_object" "f" LEFT JOIN "mt_cds_object" "rf" ON "f"."ref_id" = "rf"."id" LEFT JOIN "mt_autoscan" "as" ON "as"."obj_id" = "f"."id"  WHERE "f"."location_hash" = 3216568682 AND "f"."location" = 'V/Audio/Year' AND "f"."ref_id" IS NULL LIMIT 1
2023-12-25 13:28:43.605  trace: [sqlite_database.cc:242] select(): Adding select to Queue: SELECT "item_id", "property_name", "property_value"  FROM "mt_metadata" WHERE "item_id" = 24
2023-12-25 13:28:43.605  trace: [thread_runner.h:134] lockGuard(): ThreadRunner: Guard for SQLiteThread - addTask SelectTask
2023-12-25 13:28:43.605  trace: [thread_runner.h:124] notify(): ThreadRunner: Notifying SQLiteThread
2023-12-25 13:28:43.605  trace: [sl_task.cc:120] run(): Running: SELECT "item_id", "property_name", "property_value"  FROM "mt_metadata" WHERE "item_id" = 24
2023-12-25 13:28:43.605  trace: [sql_database.cc:2839] retrieveResourcesForObject(): SQLDatabase::retrieveResourcesForObject SELECT "item_id", "res_id", "handlerType", "purpose", "options", "parameters", "size", "duration", "bitrate", "sampleFrequency", "nrAudioChannels", "resolution", "colorDepth", "protocolInfo", "resFile", "type", "fanArtObject", "fanArtResource", "bitsPerSample", "dc:language", "sec:acodec", "sec:vcodec", "format"  FROM "grb_cds_resource" WHERE "item_id" = 24 ORDER BY "res_id"
2023-12-25 13:28:43.605  trace: [sqlite_database.cc:242] select(): Adding select to Queue: SELECT "item_id", "res_id", "handlerType", "purpose", "options", "parameters", "size", "duration", "bitrate", "sampleFrequency", "nrAudioChannels", "resolution", "colorDepth", "protocolInfo", "resFile", "type", "fanArtObject", "fanArtResource", "bitsPerSample", "dc:language", "sec:acodec", "sec:vcodec", "format"  FROM "grb_cds_resource" WHERE "item_id" = 24 ORDER BY "res_id"
2023-12-25 13:28:43.605  trace: [thread_runner.h:134] lockGuard(): ThreadRunner: Guard for SQLiteThread - addTask SelectTask
2023-12-25 13:28:43.605  trace: [thread_runner.h:124] notify(): ThreadRunner: Notifying SQLiteThread
2023-12-25 13:28:43.605  trace: [sl_task.cc:120] run(): Running: SELECT "item_id", "res_id", "handlerType", "purpose", "options", "parameters", "size", "duration", "bitrate", "sampleFrequency", "nrAudioChannels", "resolution", "colorDepth", "protocolInfo", "resFile", "type", "fanArtObject", "fanArtResource", "bitsPerSample", "dc:language", "sec:acodec", "sec:vcodec", "format"  FROM "grb_cds_resource" WHERE "item_id" = 24 ORDER BY "res_id"
2023-12-25 13:28:43.606  trace: [import_service.cc:732] addContainerTree(): Loaded container chain item /Audio/Year -> true
2023-12-25 13:28:43.606  trace: [import_service.cc:701] addContainerTree(): Received container chain item /Audio
2023-12-25 13:28:43.606  trace: [import_service.cc:701] addContainerTree(): Received container chain item /Audio/Directories
2023-12-25 13:28:43.606  trace: [sqlite_database.cc:242] select(): Adding select to Queue: SELECT "f"."id", "f"."ref_id", "f"."parent_id", "f"."object_type", "f"."upnp_class", "f"."dc_title", "f"."location", "f"."location_hash", "f"."auxdata", "f"."update_id", "f"."mime_type", "f"."flags", "f"."part_number", "f"."track_number", "f"."service_id", "f"."last_modified", "f"."last_updated", "rf"."upnp_class", "rf"."location", "rf"."auxdata", "rf"."mime_type", "rf"."service_id", "as"."persistent" FROM "mt_cds_object" "f" LEFT JOIN "mt_cds_object" "rf" ON "f"."ref_id" = "rf"."id" LEFT JOIN "mt_autoscan" "as" ON "as"."obj_id" = "f"."id"  WHERE "f"."location_hash" = 3261617994 AND "f"."location" = 'V/Audio/Directories' AND "f"."ref_id" IS NULL LIMIT 1
2023-12-25 13:28:43.606  trace: [thread_runner.h:134] lockGuard(): ThreadRunner: Guard for SQLiteThread - addTask SelectTask
2023-12-25 13:28:43.606  trace: [thread_runner.h:124] notify(): ThreadRunner: Notifying SQLiteThread
2023-12-25 13:28:43.606  trace: [sl_task.cc:120] run(): Running: SELECT "f"."id", "f"."ref_id", "f"."parent_id", "f"."object_type", "f"."upnp_class", "f"."dc_title", "f"."location", "f"."location_hash", "f"."auxdata", "f"."update_id", "f"."mime_type", "f"."flags", "f"."part_number", "f"."track_number", "f"."service_id", "f"."last_modified", "f"."last_updated", "rf"."upnp_class", "rf"."location", "rf"."auxdata", "rf"."mime_type", "rf"."service_id", "as"."persistent" FROM "mt_cds_object" "f" LEFT JOIN "mt_cds_object" "rf" ON "f"."ref_id" = "rf"."id" LEFT JOIN "mt_autoscan" "as" ON "as"."obj_id" = "f"."id"  WHERE "f"."location_hash" = 3261617994 AND "f"."location" = 'V/Audio/Directories' AND "f"."ref_id" IS NULL LIMIT 1
2023-12-25 13:28:43.607  trace: [sqlite_database.cc:242] select(): Adding select to Queue: SELECT "item_id", "property_name", "property_value"  FROM "mt_metadata" WHERE "item_id" = 25
2023-12-25 13:28:43.607  trace: [thread_runner.h:134] lockGuard(): ThreadRunner: Guard for SQLiteThread - addTask SelectTask
2023-12-25 13:28:43.607  trace: [thread_runner.h:124] notify(): ThreadRunner: Notifying SQLiteThread
2023-12-25 13:28:43.607  trace: [sl_task.cc:120] run(): Running: SELECT "item_id", "property_name", "property_value"  FROM "mt_metadata" WHERE "item_id" = 25
2023-12-25 13:28:43.607  trace: [sql_database.cc:2839] retrieveResourcesForObject(): SQLDatabase::retrieveResourcesForObject SELECT "item_id", "res_id", "handlerType", "purpose", "options", "parameters", "size", "duration", "bitrate", "sampleFrequency", "nrAudioChannels", "resolution", "colorDepth", "protocolInfo", "resFile", "type", "fanArtObject", "fanArtResource", "bitsPerSample", "dc:language", "sec:acodec", "sec:vcodec", "format"  FROM "grb_cds_resource" WHERE "item_id" = 25 ORDER BY "res_id"
2023-12-25 13:28:43.607  trace: [sqlite_database.cc:242] select(): Adding select to Queue: SELECT "item_id", "res_id", "handlerType", "purpose", "options", "parameters", "size", "duration", "bitrate", "sampleFrequency", "nrAudioChannels", "resolution", "colorDepth", "protocolInfo", "resFile", "type", "fanArtObject", "fanArtResource", "bitsPerSample", "dc:language", "sec:acodec", "sec:vcodec", "format"  FROM "grb_cds_resource" WHERE "item_id" = 25 ORDER BY "res_id"
2023-12-25 13:28:43.607  trace: [thread_runner.h:134] lockGuard(): ThreadRunner: Guard for SQLiteThread - addTask SelectTask
2023-12-25 13:28:43.607  trace: [thread_runner.h:124] notify(): ThreadRunner: Notifying SQLiteThread
2023-12-25 13:28:43.607  trace: [sl_task.cc:120] run(): Running: SELECT "item_id", "res_id", "handlerType", "purpose", "options", "parameters", "size", "duration", "bitrate", "sampleFrequency", "nrAudioChannels", "resolution", "colorDepth", "protocolInfo", "resFile", "type", "fanArtObject", "fanArtResource", "bitsPerSample", "dc:language", "sec:acodec", "sec:vcodec", "format"  FROM "grb_cds_resource" WHERE "item_id" = 25 ORDER BY "res_id"
2023-12-25 13:28:43.608  trace: [import_service.cc:732] addContainerTree(): Loaded container chain item /Audio/Directories -> true
terminate called after throwing an instance of 'std::out_of_range'
  what():  map::at
Aborted (core dumped)

from gerbera.

KarlStraussberger avatar KarlStraussberger commented on June 9, 2024

Can you please check your config of <boxlayout> it must contain <box key="Audio/allDirectories" title="Directories" class="object.container"/>.

from gerbera.

udippel avatar udippel commented on June 9, 2024
<boxlayout>
        ...
          <box key="Audio/allDirectories" title="Directories" class="object.container" />
          ...

Complete passage taken over and used in an unmodified manner from the auto-generated config.xml

My best suggestion is, to roll back from 92 to 91. Some unfathomable thing must have happened thence.

from gerbera.

KarlStraussberger avatar KarlStraussberger commented on June 9, 2024

There has been a recent addition to that list. Maybe it's that one. Can you rerun --create-config and compare.

from gerbera.

udippel avatar udippel commented on June 9, 2024

92:

$ gerbera --create-config | grep "box key" > latest.box
$ cat config.xml | grep "box key" > earlier.box
$ diff latest.box earlier.box 
11d10
<           <box key="Audio/artistChronology" title="Album Chronology" class="object.container" />

$ 

91: no difference.

Added this line into config.xml, 92 stays alive.

We seem to suffer from a conceptual flaw here, since some sub-sub-item in the config ought never be able to decide survival?

from gerbera.

KarlStraussberger avatar KarlStraussberger commented on June 9, 2024

The fix closes that gap. In this case we have to merge defaults into users values. Normally it has to replace.

from gerbera.

udippel avatar udippel commented on June 9, 2024

Confirmed. Now it is correct:

info: Using home directory ...
info: Created default BoxLayout key=Audio/artistChronology, title=Album Chronology, objClass=object.container, enabled=true, size=1
info: Configuration load succeeded.

Though I am still not fully at ease with the config, potentially conflicting configs, in config.xml and the database:
image

Though that's another topic ... .

from gerbera.

KarlStraussberger avatar KarlStraussberger commented on June 9, 2024

The web UI always shows the current config.

Normally, the config file is the only place of truth which can be overwritten by the web ui. If some value is not set, the default is kicking in. Some values do not have default, thus gerbera does not start if those are not set. Now, we have the option of well-defined keys that defaulted.

from gerbera.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.