What is "globally shared data" in HANA shared directory? Is it the shared customer data or the shared administrative data?
Note from SAP: /hana/shared/ - Contains executable programs (exe), globally shared data (global), instance profiles (profile), and SAP HANA configuration files.
Source:http://help.sap.com/saphelp_hanaplatform/helpdata/en/4c/24d332a37b4a3caad3e634f9900a45/frameset.htm
Not quite sure what is unclear with the official description. This OS level folder does not contain the database contents but the software components that are required to access the database (e.g. binaries for the server processes).
Related
More than 20 years ago I created a Domino agent that calls Java code and uses JDBC to write information into a DB2 database. Despite its questionable quality this agent has been running since then and now needs to be migrated to a completely different platform because we are shutting down Domino completely.
The colleagues that are now in charge of the agent need to have that JAR in order to decompile it and analyze its behaviour.
Yes, I know sourcecode should be available in a repository, but it isn't ;-)
Yes, I know that this reverse engineering approach has some risks, but we don't have better options ;-)
Unfortunately we can't find the JAR file anywhere. From what I remember it was uploaded to the NSF file and is stored and handled by Domino.
What we already tried:
analyzed the Lotusscript code
checked the Java and JAR sections in the NSF file
looked into the filesystem of the server and searched for JAR files with a name that points into the direction of DB2 drivers or my DB access classes
listed the content of all JAR files and searched for the name of the class I know is used by the agent (DatabaseAccessToDb2)
We are on Domino 9, I don't remember which version of Notes I used while creating the agent.
Here are parts of the agent code:
Option Public
Option Explicit
Use "LinkRegistry"
Uselsx "*javacon"
Use "DB2 Connect"
Use "database"
Use "hilfe"
Option Base 0
...
Sub Initialize
...
Call ConnectDB2( opendoc )
...
End Sub
Sub ConnectDB2( opendoc As NotesDocument )
...
Dim DatabaseAccessToDb2 As JavaClass
Set DatabaseAccessToDb2 = jsession.GetClass( "de.my.company.forms.database.DatabaseAccessToDb2" )
Set db2 = DatabaseAccessToDb2.CreateObject
Call db2.enableLog()
db2.doInsert( "..." )
db2.close
...
End Sub
This is the structure of the agent, we looked "everywhere" and couldn't find the compiled java code:
Where should the JAR file be located ? Are we searching for the wrong kind of file (I don't think WAR files are relevant) ?
We checked SO posts like this one but they didn't bring us closer to a solution.
With an agent using LS2J as yours does, there are four places that the Java code could be, and code could be used from more than one of these places at once:
As source code in a script library, compiled when the script library is saved. You'll find this under "Src" after opening a script library in Designer;
As a jar file attached to a script library. You'll find this under "Archive" after opening a script library in Designer;
As a jar file in the Domino server file system (only if the agent runs on the server); or
As a jar file in the Notes client file system (only if the agent runs on Notes clients).
You don't mention script libraries in your question. Check those first if you haven't yet done so.
If Domino or Notes uses a custom jar file from the file system, the jar file can be in the jvm\lib or jvm\lib\ext subdirectory of the Domino or Notes installation directory, or in a custom location specified by the JavaUserClasses key in the appropriate Notes.ini file.
I am currently having the same issue that melezhik has explained in his ticket at the bailador project. https://github.com/Bailador/Bailador/issues/309.
I want to write a module App::Something that is Cro based which should ship a few files and folders. Taken from the comments on this post the $?RESOURCE "flattens" the contents of directory down to single files.
Do you have a smart idea how to provide access to folder structures shipped in modules?
We have multiple developers working on a shared project through dropbox. Each time one of the developers saves a file, the other developers get the following message:
"Project Files Changed
Project components were changed externally and cannot be reloaded:
ToolWindowManager
Would you like to reload project?"
How can each person have their own settings in a shared project so this is not a problem?
You should use VCS (Version control systems) as for example git, and ignore the IDE configuration files (.gitignore), so you can avoid the conflicts with the configuration files
I want to load a module which is stored in a database under the modules named as "/modules/mylib.xqy".
Currently, in the document requiring these module, I am writing
import module namespace rb2lib="http://example.com/modules/lib" at "/modules/mylib.xqy";
Unfortunately, this expression makes a lookup on the filesystem and not on my database.
Is there a way loading modules stored in database?
Thanks in advance!
Yes, change the application server configuration's modules setting from (file system) to the Modules database (or any database). The XQuery module must be stored in that database, and its URI must be the app server's module root plus the import location. For example, you could set your module root to / and store the module at /modules/mylib.xqy.
This is controlled by a setting on the administrative console. Look at your App Server configuration for the "modules" config item. It is currently set to file system, right? Change it to the database that has your modules.
I have two teamcity configurations one becoming my common helpers and reuseable components and my other a website which uses the common project.
I use a third configuration to publish to a test environment.
When the third configuration is run i would like it to get the artifacts from the common project and merge them with the website output and deploy. Am i asking for two much?
This ought to be pretty straightforward.
On ThirdConfig add two artifact dependencies. One whose source is CommonProject, and another whose source is WebProject. When configuring an artifact dependency it will allow you to specify which artifact files are are actually pulled from CommonProject and WebProject into ThirdConfig via the 'Artifact paths'. The artifact files can then be placed into some new folder hierarchy specific to ThirdConfig by using the 'Destination path'. These two options ought to be enough to create the directory structure that is the merging of CommonProject and WebProject. That takes care of the merge part.
The deploy is a bit more tricky. To my knowledge TeamCity does not support any sort of 'copy or upload to external location' function out of the box. For this bit you'll need to create an msbuild script (or batch file, or anything that can be run from the command line). Said script can expect the file/directory structure you've created via artifact dependencies where the root of the structure is the initial working directory of the script, and need only push these files out to your specific deploy location. That 'push' of course is going to be specific to your environment. Ftp, unc share, etc.