On Thu, Nov 22, 2018 at 11:33 PM Vaclav Petras <wenzesl...@gmail.com> wrote:
>
>
>
> On Thu, Nov 22, 2018 at 10:57 AM Markus Metz <
markus.metz.gisw...@gmail.com> wrote:
>>
>>
>>
>> On Thu, Nov 22, 2018 at 3:31 PM Vaclav Petras <wenzesl...@gmail.com>
wrote:
>> >
>> >
>> >
>> > On Wed, Nov 21, 2018 at 2:12 PM Martin Landa <landa.mar...@gmail.com>
wrote:
>> >>
>> >> Hi,
>> >>
>> >> st 21. 11. 2018 v 20:05 odesílatel <svn_gr...@osgeo.org> napsal:
>> >> > +        # clean the sqlite db
>> >> > +        from grass.script import db as gdb
>> >> > +        from grass.script import core as gcore
>> >> > +        conn = gdb.db_connection()
>> >> > +        if conn and conn['driver'] == 'sqlite':
>> >> > +           # check if db exists
>> >> > +           gisenv = gcore.gisenv()
>> >> > +           database = conn['database']
>> >> > +           database = database.replace('$GISDBASE',
gisenv['GISDBASE'])
>> >> > +           database = database.replace('$LOCATION_NAME',
gisenv['LOCATION_NAME'])
>> >> > +           database = database.replace('$MAPSET', gisenv['MAPSET'])
>> >> > +           if os.path.exists(database):
>> >> > +               message(_("Cleaning up sqlite database ..."))
>> >> > +               gcore.start_command('db.execute', sql = 'VACUUM')
>> >>
>> >> a small note, the added code could be probably moved to new a fn eg.
>> >> clean_db(), Ma
>> >
>> >
>> > Yes, ideally to grass.script.setup.
>>
>> But this is only initializing a GRASS session, without any mechanism to
terminate a session. Basic usage in the documentation:
>>
>>         # ... use GRASS modules here
>>         # remove the session's gisrc file to end the session
>>         os.remove(gisrc)
>>
>> maybe a new fn to terminate a session is needed? This fn could clean
temp files like clean_temp() in grass.py and also clean any default sqlite
db when terminating the grass session.
>
>
> That's all correct. There would have to be more to make it the same
procedure as in grass.py, but eventually we need to do that.
>
> What I meant to add it to grass.script.setup module where we should
eventually put all the functions needed to setup a proper GRASS session (or
in some other module, but setup seems to be something good enough for now
and moving things around while keeping the API is easy in Python).

ok, the db cleanup is now (r73704) a function in grass.script.setup
_______________________________________________
grass-dev mailing list
grass-dev@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/grass-dev

Reply via email to