Skip to content

[#138] Job mje files to obey $gtm_tmp/$ydb_tmp

Sam Habiel requested to merge shabiel/YDB-Web-Server:master into master

The Web Server historically never had job files; but one was added recently as part of commit 09f29370 to handle a very rare case of job failures, as YottaDB does not have a way to handle such a failure using error traps.

This commit makes sure that the job file goes to gtm_tmp/ydb_tmp if set.

The original request asked to add the timestamp to the job file to uniquely identify the file in case of process recycling. This will be hard to implement as the job file location needs to be known only from its PID, not from anything else, kind of like various Linux utilities that use the /var/run system. The reason we need to know the PID is to appropriately stop the server and delete all the temporary files using a coammnd from an external caller. If we don't know the job by PID, we cannot do that. Our user database file is already implemented using a similar scheme.

Tested by mjeloc.

Other misc changes:

  • Due to the absence of a mechaism to "gracefully shut down" after mupip stop (YDB#1001), stop^%ydbwebtest manually calls shutdown^%ydbwebreq to clean after shutdown. This way there won't be user database files and job files left behind.
  • shutdown^%ydbwebreq now has a silent flag.

Version bumped to 4.4.1.

Merge request reports