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

Xerces: Problems with INI as Default Storage #1686

Open
sanssecours opened this Issue Nov 1, 2017 · 5 comments

Comments

Projects
None yet
3 participants
@sanssecours
Contributor

sanssecours commented Nov 1, 2017

Steps to Reproduce the Problem

  1. Configure Elektra with INI as default storage

    mkdir build
    cd build
    cmake .. -GNinja -DPLUGINS='ALL' -DKDB_DB_FILE='default.ini' -DKDB_DB_INIT='elektra.ini' -DKDB_DEFAULT_STORAGE=ini
  2. Build Elektra

    ninja
  3. Run the following commands:

    sudo kdb mount xerces.xml /examples/xercesfile xerces
    
    kdb set /examples/xercesfile foo
    kdb setmeta /examples/xercesfile xerces/rootname xerces
    kdb set /examples/xercesfile/bar bar
    kdb setmeta /examples/xercesfile/bar meta "da_ta"
    
    kdb getmeta /examples/xercesfile xerces/rootname
    #> xerces
    
    kdb get /examples/xercesfile/bar
    #> bar
    
    kdb export /examples/xercesfile xerces

Expected Result

#> <?xml version="1.0" encoding="UTF-8" standalone="no" ?>
#> <xerces>
#>
#>   <bar meta="da_ta">bar</bar>foo
#>
#> </xerces>

Actual Result

# ERROR: 174

Error Message

Sorry, the error (#174) occurred ;(
Description: general xml error
Reason: invalid or illegal XML character
Ingroup: plugin
Module: xerces
At: ../src/plugins/xerces/xerces.cpp:114
Mountpoint: /examples/xercesfile
Configfile: /dev/stdout

System Information

  • Elektra Version: master

@sanssecours sanssecours added the bug label Nov 1, 2017

@sanssecours sanssecours added this to the 1.0.0 milestone Nov 1, 2017

@markus2330 markus2330 modified the milestones: 1.0.0, 0.8.21 Nov 1, 2017

@markus2330

This comment has been minimized.

Show comment
Hide comment
@markus2330

markus2330 Nov 1, 2017

Contributor

Thank you for reporting! Good that we did not switch to INI as default in this release.

I used 0.8.21 as milestone: for the lcdproc release INI as default is desirable. In general you do not have to tag bugs as "1.0.0", it is clear that we want to release non-experimental parts of 1.0.0 without known bugs. Having too many issues for "1.0.0" makes the goal less clear. We could add another milestone for your purpose?

Contributor

markus2330 commented Nov 1, 2017

Thank you for reporting! Good that we did not switch to INI as default in this release.

I used 0.8.21 as milestone: for the lcdproc release INI as default is desirable. In general you do not have to tag bugs as "1.0.0", it is clear that we want to release non-experimental parts of 1.0.0 without known bugs. Having too many issues for "1.0.0" makes the goal less clear. We could add another milestone for your purpose?

@sanssecours

This comment has been minimized.

Show comment
Hide comment
@sanssecours

sanssecours Nov 1, 2017

Contributor

We could add another milestone for your purpose?

How about 0.9? I think 1.0 should only fix minor issues of an almost stable 0.9.x release.

Contributor

sanssecours commented Nov 1, 2017

We could add another milestone for your purpose?

How about 0.9? I think 1.0 should only fix minor issues of an almost stable 0.9.x release.

@markus2330

This comment has been minimized.

Show comment
Hide comment
@markus2330

markus2330 Nov 1, 2017

Contributor

Good suggestion, I created 0.9.0.

INI-specific bugs, however, are 0.8.21, unless you plan to create a new INI plugin which we can use as default?

Contributor

markus2330 commented Nov 1, 2017

Good suggestion, I created 0.9.0.

INI-specific bugs, however, are 0.8.21, unless you plan to create a new INI plugin which we can use as default?

@sanssecours

This comment has been minimized.

Show comment
Hide comment
@sanssecours

sanssecours Nov 1, 2017

Contributor

INI-specific bugs, however, are 0.8.21, unless you plan to create a new INI plugin which we can use as default?

Nope 😊. I think it makes more sense to fix the already existing INI plugin, instead of creating a new one, containing new additional bugs.

Contributor

sanssecours commented Nov 1, 2017

INI-specific bugs, however, are 0.8.21, unless you plan to create a new INI plugin which we can use as default?

Nope 😊. I think it makes more sense to fix the already existing INI plugin, instead of creating a new one, containing new additional bugs.

sanssecours added a commit to sanssecours/elektra that referenced this issue Nov 4, 2017

Xerces: Use non-cascading keys in MSR example
This way Xerces handles all the metadata. If we use cascading keys,
then the example would fail if we use INI as default storage. If you
want to learn more, please check out issue ElektraInitiative#1686.

sanssecours added a commit to sanssecours/elektra that referenced this issue Nov 4, 2017

Xerces: Use non-cascading keys in MSR example
This way Xerces handles all the metadata. If we use cascading keys,
then the example would fail if we use INI as default storage. If you
want to learn more, please check out issue ElektraInitiative#1686.

sanssecours added a commit to sanssecours/elektra that referenced this issue Nov 8, 2017

Xerces: Use non-cascading keys in MSR example
This way Xerces handles all the metadata. If we use cascading keys,
then the example would fail if we use INI as default storage. If you
want to learn more, please check out issue ElektraInitiative#1686.

@e1528532 e1528532 referenced this issue Dec 14, 2017

Closed

plugins: remove experimental #1734

6 of 7 tasks complete

@markus2330 markus2330 modified the milestones: 0.8.21, 0.8.22 Dec 22, 2017

@markus2330 markus2330 removed this from the 0.8.22 milestone Feb 24, 2018

@markus2330

This comment has been minimized.

Show comment
Hide comment
@markus2330

markus2330 Feb 24, 2018

Contributor

This is now low-priority thus we do not have INI as default.

Contributor

markus2330 commented Feb 24, 2018

This is now low-priority thus we do not have INI as default.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment