Setting up sbspace to hold send and receive queues in Informix - informix

I am missing some steps to achieve Enterprise Replication with Informix regarding disk configuration:
How to set up sbpaces to hold send and receive queues
Create dbspace for transaction records
Define dbspace for syscdr database
I've created two different VMs; each one got CentOS7 Linux System. Then I've installed IDS Developer Edition. My installation is organized as /mnt/informix and in informix/ I have /product, /ids, /storage:
/mnt/informix/product is where am saving installation files.
/mnt/informix/ids is where am installing IDS.
/mnt/informix/storage is where rootdbs, env.ids have been created.
I was able to create instance on each machine and access the remote instance after providing some changes editing the onconfig file, sqlhosts file and hosts.equiv file on each machine. I've been able to create databases and tables on each machine and establish connection between both of them. But when it is time to configure disk for replication, I am not sure of what am doing. I've created new dbspaces and sbspaces by creating new files inside storage directory and changed owner to informix user and file access permissions to 660, then create dbspaces and sbspaces using the onspaces command and provided the required entries in the onconfig file, but I get the error:
command failed -- Sbspace specified for the send/receive queue does
not exist (107)

Related

Using Composite Database in AuraDB

Can you create a composite database on an AuraDB server? I have an AuraDB server running. Running the initial composite database command:
CREATE COMPOSITE DATABASE cineasts
Does not work on the neo4j version 5 instance when I run it through the neo4j Browser interface. I try running it in the 'system' database, but I get this error:
Failed to create the specified database 'cineasts': The total limit of databases is already reached. To create more you need to either drop databases or change the limit via the config setting 'server.max_databases'
According to the documentation (https://neo4j.com/docs/operations-manual/current/composite-databases/introduction/), I need to run this through "administrative commands". I don't see how to access administrative commands on AuraDB. Can I create composite databases on AuraDB?
Steps I followed:
I created a neo4j version 5 instance of a database on AuraDB.
I opened the neo4j browser to access the neo4j version 5 database.
I executed the CREATE COMPOSITE DATABASE cineasts command
I expected the neo4j Browser to accept the command and create the database for use in the subsequent alias creation steps. Instead, it threw an error.
You cannot create databases with AuraDB at the moment.

Neo4j Admin Import Database not Available in Console

I have a successful import using the bin/neo4j-admin tool, can see the new database folder in my /databases, have restarted the server, but cannot get the database to appear in the console as an option to switch to. Do you have any suggestions for getting a newly imported database to be available in the console?
I assume that you are referring to the Neo4j Desktop environment.
The Desktop currently seems to be designed to support local DBs created by the Desktop itself.
As a workaround, you can:
Create a new "Graph" in the Desktop, using the "Connect to Remote Graph" option.
Accept the default "bolt://localhost:7687" as the Connect URL (assuming the default is acceptable).
Manually start your local neo4j installation from the command line, and
Click Connect on your "Graph" to connect.
Be aware that the Desktop has fewer bells and whistles for "remote
graphs".
I resolved the issue. The steps I found to successfully import a set of CSV using the admin -import tool is to:
Stop the server
Run the admin -import tool and use --database=aDatabaseName
Start the server
In the console switch to the System database using the pulldown control
Run the following command at the system prompt: create database aDatabaseName
(should be the same name set in #2 above)
Switch to the database just created using the console pulldown control
I was able to see the database nodes and relationships I created following the above steps
This is what worked for me. I was trying to access my database generated through neo4j-admin on my Neo4j Desktop app browser console.
On Neo4j Desktop App open the browser of the database server you want to include the new database
Switch to the system database https://neo4j.com/developer/manage-multiple-databases/
:use system
as system, create the database you want to import
:create database dbname
Stop the server
Use the neo4-admin tool to import the database https://neo4j.com/graphacademy/online-training/v4/19-using-neo4j-admin-tool-import/ (make sure to use the same name --database dbname). Run these command on the terminal opened from the Desktop app under the databases>_Open Terminal. On windows the neo4j-admin.bat is located in the bin directory
start the server and open the neo4j browser and switch to the system database https://neo4j.com/developer/manage-multiple-databases/
:use system
To list all the database available to use as system
:dbs
switch to your imported database
:use dbmame
Your browser console is ready now for your queries.

Movie database is shown instead of database content after restarting Neo4j process

I am using Neo4j 2.3.2 CE server (not embedded) on Windows 7.
I am experiencing a strange behavior. If I stop and restart the Neo4j server process and start the database with the last used database directory, the demo movie database is shown in the web GUI even though the directory still contains my database. After renaming the directory, and starting the database with the new directory name, my database contents are shown again.
Steps to reproduce:
(1) Start the Neo4j server process
(2) Start the server with an empty directory as database location
(3) In web GUI check that database is empty
(4) In web GUI add some data
(5) Stop server and server process
(6) Start server process
(7) Start server with the same directory as above
(8) Check the database contents > now it contains the movie demo database!
(9) Stop server
(10) Rename the database directory
(11) Start server with the new directory name
(12) The database now contains the data added in (4)
Any one has a solution, or at least an explanation?
Gergely
Check what's in config file.
conf/neo4j-server.properties
org.neo4j.server.database.location=data/graph.db
For the record, here is the solution.
When Neo4j CE is started, the Database Location field contains the last used directory. However this is a trap. The effective database location is the default directory, which is C:\Users\your_user_name\Documents\Neo4j\default.graphdb. You have to click Choose and select the directory again. I had the movie database in this directory, hence the behavior above.
Note: the org.neo4j.server.database.location property of the server configuration file C:\Users\your_user_name\AppData\Roaming\Neo4j Community Edition\neo4j-server.properties seems to be ignored in Neo4j CE.

how restore a database to a new machine in Stardog

I am trying to restore a database to a new machine in Stardog 2.1.3, but I get this error:
Guice provision errors:
1) Error injecting constructor, java.io.IOException: Unable to create directory /home/**user-on-old-machine**/stardog-2.1.3/TEST
at com.complexible.stardog.index.disk.ConcurrentDiskIndexLoader.<init>(ConcurrentDiskIndexLoader.java:33)
while locating com.complexible.stardog.index.IndexBulkLoader annotated with interface com.google.inject.assistedinject.Assisted
It cannot create the restored database directory in stardog home directory on the new machine, however, it can create new databases with $stardog-admin db create -n NEW-DB.
I also tried on Windows machine. Same problem but different error which I don't have access to right now.

Jenkins - remote access denied

I'm using the ArtifactDeployer plugin to deploy the build job artifacts to a remote location (Windows share SMB).
However Jenkins never manages to succeed. Throwing errors like:
[ArtifactDeployer] - Starting deployment from the post-action ...
[ArtifactDeployer] - [ERROR] - Failed to deploy. Can't create the directory ... Build step
[ArtifactDeployer] - Deploy artifacts from workspace to remote directories' changed build result to FAILURE
Local deployment works fine.
The Jenkins machine OS is Windows 7 32-bit Prof.
Jenkins is running as a service using a local system account.
I tried using another account, my user account but the service failed to start (Windows error 1069: the service did not start due to a logon failure).
The network service account did run but than Jenkins throws errors it can't access the .NET framework.
When manually trying the remote copy, this works fine. I can create directories and write to it. On the same machine of course.
I tried two different remote reference in Jenkins:
1) \\targetdirectory
2) I:\ - by mapping a drive letter to the remote dir in windows
No success...
Any tips or suggestions? Thanks!
Update 15/02/2012:
Still no solution or workaround for this issue.
It's not only the plugin, I hit also this issue using "Execute Windows batch command".
I found a bug report that I want to share.
Solution
I found a solution. You have to grant access persmission to the computer in a domain instead of the user of that machine. Seems very logic if you look back to it.
A 2nd solution is to run the service using a domain user account. Above I made a mistake by using the local user .\user in stead of DOMAIN\user.
If you don't have a domain, the following will work for sure. This should work even if you have a domain.
Background Info:
You need your mapped drive to be mapped for the same account that the service is using AND be available at the right time. Normally mapped drives are mapped only for the logged in user, at the time that they log in. Service user contexts don't get "logged in" per se -- for example, if I map a drive as MyUser and the service runs as MyUser, the drive won't be available until I actually log in by typing in my password. However, we can use a script to map the drive at startup (instead of login) for a particular user. Jenkins normally runs as Local System Account, so if you don't want to change that, you'll need to run the script below as the SYSTEM user. You can instead create a specific user for Jenkins to run as, if you don't want to grant this mapped drive to all services/processes that run as SYSTEM, and run both the service and the script below as that user (this is probably more secure).
Solution Steps:
In ArtifactDeployer you want to deploy to a mapped network drive. In my case this is S:.
There is no special setup for permissions on the remote share. (In my case, a Windows Server 2008 share with a username and password that is used for mapping the drive.)
Write a batch file MapDrives.bat in a place that your chosen user (default: SYSTEM) has access to, with the following in it:
net use S: "\\server_name\share_name" /persistent:yes password_here /USER:username_here
Note that I am mapping to S: in that line.
Via Task Scheduler, create a task that runs as the same user as the service (default: SYSTEM), triggers At Startup, and as it's action, runs the batch file MapDrives.bat.
Reboot and it should work!
Citations:
After diving through many pages and many tests, ultimately, the best suggestions were found here, and led me to the above solution.
https://stackoverflow.com/a/4763324/150794
Make sure your 'local system account' has access rights to the remote directory (including write access). Then use the notation
\\targetdirectory
Mapping drive letters to remote directories only applies to the user account you are currently working with. The drive letter mapping will not be available to any other account.

Resources