Performance DB vs Java Edition
Hi there,
we've been investigating wether a (and when which) NoSQL-DB outperforms a standard SQL solution for our usecase:
500.000 records bulk insert
2k - 5k per record
With 2 Indices
Using Java API
Multi OS: Linux, Windows, z/OS
Berkeley DB performed best (bulk insert, selects and deletes) on our Windows-Tests (with 2GB memory).
Unfortunately theres a huge gap between Berkley DB and its Java Edition performance.
For a 20.000 record chunk insert Berkeley DB (using BTREE) takes 2000 - 3500 ms. When the cache is full and the first cache misses appear the inserting time grows and stays at arround 8000 ms. After a while st_cacheMiss decreases again resulting in 2000 - 3500 ms per insert.
The JE starts with 4500 - 5000 ms per insert. After the first 200.000 records the cache is full and the nCacheMiss grows rapidly along with the inserting time (11s, 13s, 16s, ... 30s and even longer). There is no constancy like the non Java version shows to have.
Is there any way to reach the Berkeley DB's performance with the JE? Esp. the constant insert time.
We've tried already different CacheModes but default mode is the best.
Setting je.log.faultReadSize=5120 leads to a slighter better perfomance, but still the inserting gets slower and slower.
Since we need z/OS support we'd prefer to use the JE.
Thanks for any help.
Jonas
Hello Jonas,
Glad you found the main problem.
I don't find it's productive to compare the two products' performance as they are so different, but I can help with tuning BDB JE.
The first step is to take a look at the performance section of the FAQ:
http://www.oracle.com/technetwork/database/berkeleydb/je-faq-096044.html
If you have further questions on tuning please be sure to post:
+ Your EnvironmentConfig settings and je.properties (if any)
+ Your DatabaseConfig or StoreConfig settings.
+ A couple dumps of the EnvironmentStats covering the performance test time period, and be sure to clear the stats each time with StatsConfig.setClear(true).
This is just the starting info for doing any sort of tuning with JE.
I'm surprised that CacheMode.EVICT_LN didn't help, since moving the LNs out of cache immediately should reduce the burden on the evictor and Java GC. If you don't have enough cache to hold all LNs (see the FAQ entry on DbCacheSize), then EVICT_LN is usually beneficial. If you use EVICT_LN, be sure to also set EnvironmentConfig.CLEANER_LAZY_MIGRATION to false. Lazy migration retains LNs in cache and partially negates the benefits of EVICT_LN.
As described in the FAQ, be sure your cache size is large enough to hold the BINs.
The deferred-write mode is sometimes a win for bulk loading, but if you are doing pure insertions it may not help.
I suggest enlarging these ENVIRONMENT_CONFIG settings if you haven't already:
CLEANER_LOOK_AHEAD_CACHE_SIZE - try 1MB
CLEANER_READ_SIZE - try 1MB
See Durability if your database/store is transactional. Using NO_SYNC durability is much faster of course, but there are trade-offs. NO_SYNC is the default for a non-transactional database/store.
--mark
Similar Messages
-
Berkeley DB Java Edition and Java 1.4
As a Berkeley DB Java Edition user we place a very high value on your input. We need your feedback regarding a product requirement for Java 1.5.
As time goes on we find ourselves implementing more and more performance enhancements based on facilities found only Java 1.5, primarily in the java.util.concurrent package. When we make these enhancements, we currently also maintain support for Java 1.4 although not at the same level of performance. Maintaining and testing this dual mode operation is beginning to slow down our development process. We would like to move as quickly as possible to take advantage of Java 1.5 performance features, but we are constrained by maintaining support for Java 1.4.
We are therefore planning to require Java 1.5 in the next major release of Berkeley DB Java Edition. Before finalizing this plan, we need your input on whether Java 1.4 support is important to you. Please let us know what your needs are by replying to this forum message.
Thanks.
The Java Edition teamMorgan,
Yes, we currently plan to only offer replication for Java 1.5. Our motivations are split between the speed consideration and the codeline issues. We've seen better performance with 1.5. Also taking full advantage of the type safety and concurrent support in 1.5 can end up affecting implementation choices significantly, and can make 1.4 code and 1.5 code diverge a lot.
As for bug fixing on the 1.4 releases, we don't yet have an official plan. We care very much about supporting our open source users and have been able to provide backwards patches where critical in the past. However, the cost of backporting between 1.5 and 1.4 may be high for some bug fixes, and we'll probably have to decide case by case.
Regards,
Linda -
Berkeley DB Java Edition (JE) and JRuby Interoperability
I finally got around to doing a quick test of calling Berkeley DB Java Edition (JE) from JRuby (JRuby is a 100% pure-Java implementation of Ruby).
Before we get to JE and JRuby you probably want to know the answer to this question: "Why you would want to run Ruby on a JVM?" The answer is threefold:
1. Ruby Performance. A large amount of effort has been put into tuning contemporary JVMs (e.g. Hotspot, Java 6, etc.) and Ruby programmers (through JRuby) can benefit from these tuning efforts. The JRuby guys have set a goal to make JRuby the fastest Ruby implementation available and Sun is certainly throwing their weight behind that effort.
2. Portability. JRuby is a Ruby interpreter that runs anywhere a Java 5 JVM runs. You download it as a single tar.gz and it will run pretty much anywhere.
3. Legacy Code. JRuby makes legacy Java apps and libraries available to Ruby programmers (did you ever think you'd see the word "legacy" next to the word "Java"?).
JE interoperability with JRuby is important because it means that Ruby programmers now have a simple, embeddable, ACID storage engine (JE) available to them.
To test this interoperability, I cobbled together a simple Ruby test program which does the following:
* Opens an Environment, Database, and Transaction
* Creates 10 records with keys 1..10 and marshaled Ruby Time instances as the corresponding data. This uses the Ruby Marshal package for the data binding and the JE Integer binding on the key side. There's no reason why you couldn't use different marshaling packages or methods for keys and data.
* Commits the transaction,
* Performs a Cursor scan to read those 10 records and prints out the Time instances, and
* Searches for and reads the record with key 5 (an arbitrary key) and prints out the Time instance that is the corresponding data
By the way, hats off to the JRuby developers: all of this code "just worked", out of the box, and most of my two hour investment was spent learning enough basic Ruby to make it all work. If you already know Ruby and JE, then demonstrating this interoperability would take you all of about 10 minutes.
This was all done at the "base API" level of JE and no modifications to JE were required. I used Transactions in my code, but there's no reason that you need to. Mark and I have been talking about how to integrate JE's Direct Persistence Layer (DPL) with JRuby and we think it can be done with some remodularization of some of the DPL code. This is exciting because it would provide POJO ACID persistence to Ruby programmers.
Linda and I have been talking about whether it makes sense to possibly use Ruby as a scripting platform for JE in the future. Given how easy it was to bring up JE and JRuby, this certainly warrants some further thought.
The Ruby code and corresponding output is shown below. By the way, if you see something that I didn't do "The Ruby Way", feel free to let me know.
I'd love to hear about your experiences with JE and JRuby. Feel free to email me a charles.lamb at <theobviousdomain dot com>.
require 'java'
module JESimple
require 'date'
# Include all the Java and JE classes that we need.
include_class 'java.io.File'
include_class 'com.sleepycat.je.Cursor'
include_class 'com.sleepycat.je.Database'
include_class 'com.sleepycat.je.DatabaseConfig'
include_class 'com.sleepycat.je.DatabaseEntry'
include_class 'com.sleepycat.je.Environment'
include_class 'com.sleepycat.je.EnvironmentConfig'
include_class 'com.sleepycat.je.OperationStatus'
include_class 'com.sleepycat.je.Transaction'
include_class 'com.sleepycat.bind.tuple.IntegerBinding'
include_class 'com.sleepycat.bind.tuple.StringBinding'
# Create a JE Environment and Database. Make them transactional.
envConf = EnvironmentConfig.new()
envConf.setAllowCreate(true)
envConf.setTransactional(true)
f = File.new('/export/home/cwl/work-jruby/JE')
env = Environment.new(f, envConf);
dbConf = DatabaseConfig.new()
dbConf.setAllowCreate(true)
dbConf.setSortedDuplicates(true)
dbConf.setTransactional(true)
db = env.openDatabase(nil, "fooDB", dbConf)
# Create JE DatabaseEntry's for the key and data.
key = DatabaseEntry.new()
data = DatabaseEntry.new()
# Begin a transaction
txn = env.beginTransaction(nil, nil)
# Write some simple marshaled strings to the database. Use Ruby
# Time just to demonstrate marshaling a random instance into JE.
for i in (1..10)
# For demonstration purposes, use JE's Binding for the key and
# Ruby's Marshal package for the data. There's no reason you
# couldn't use JE's bindings for key and data or visa versa or
# some other completely different binding.
IntegerBinding.intToEntry(i, key)
StringBinding.stringToEntry(Marshal.dump(Time.at(i * 3600 * 24)),
data)
status = db.put(txn, key, data)
if (status != OperationStatus::SUCCESS)
puts "Funky status on put #{status}"
end
end
txn.commit()
# Read back all of the records with a cursor scan.
puts "Cursor Scan"
c = db.openCursor(nil, nil)
while (true) do
status = c.getNext(key, data, nil)
if (status != OperationStatus::SUCCESS)
break
end
retKey = IntegerBinding.entryToInt(key)
retData = Marshal.load(StringBinding.entryToString(data))
dow =
puts "#{retKey} => #{retData.strftime('%a %b %d')}"
end
c.close()
# Read back the record with key 5.
puts "\nSingle Record Retrieval"
IntegerBinding.intToEntry(5, key)
status = db.get(nil, key, data, nil)
if (status != OperationStatus::SUCCESS)
puts "Funky status on get #{status}"
end
retData = Marshal.load(StringBinding.entryToString(data))
puts "5 => #{retData.strftime('%a %b %d')}"
db.close
env.close
end
Cursor Scan
1 => Fri Jan 02
2 => Sat Jan 03
3 => Sun Jan 04
4 => Mon Jan 05
5 => Tue Jan 06
6 => Wed Jan 07
7 => Thu Jan 08
8 => Fri Jan 09
9 => Sat Jan 10
10 => Sun Jan 11
Single Record Retrieval
5 => Tue Jan 06In my previous post (Berkeley DB Java Edition in JRuby), I showed an example of calling JE's base API layer and mentioned that Mark and I had been thinking about how to use the DPL from JRuby. Our ideal is to be able to define classes in Ruby, annotate those class definitions with DPL-like annotations, and have the JE DPL store them. There are a number of technical hurdles to overcome before we can do this. For instance, Ruby classes defined in JRuby do not map directly to underlying Java classes; instead they all appear as generic RubyObjects to a Java method. Granted, it would be possible for the DPL to fish out all of the fields from these classes using reflection, but presently it's just not set up to do that (hence the modification to the DPL that I spoke about in my previous blog entry). Furthermore, unlike Java, Ruby allows classes to change on the fly (add/remote new fields and methods) causing more heartburn for the DPL unless we required that only frozen Ruby classes could be stored persistently.
On thinking about this some more, we realized that there may be a way to use the DPL from JRuby, albeit with some compromises. The key to this is that in JRuby, if a Java instance is passed back to the "Ruby side" (e.g. through a return value or by calling the constructor for a Java class), it remains a Java instance, even when passed around in JRuby (and eventually passed back into the "Java side"). So what if we require all persistent classes to be defined (i.e. annotated) on the Java side? That buys us the standard DPL annotations (effectively the DDL), freezes the classes that the DPL sees, and still lets us benefit from the POJO persistence of the DPL. All of this can be done without modification to JE or the DPL using the currently available release. I cooked up a quick example that builds on the standard "Person" example in the DPL doc and included the code below.
require 'java'
module DPL
require 'date'
# Include all the Java and JE classes that we need.
include_class 'java.io.File'
include_class 'com.sleepycat.je.Environment'
include_class 'com.sleepycat.je.EnvironmentConfig'
include_class 'com.sleepycat.persist.EntityCursor'
include_class 'com.sleepycat.persist.EntityIndex'
include_class 'com.sleepycat.persist.EntityStore'
include_class 'com.sleepycat.persist.PrimaryIndex'
include_class 'com.sleepycat.persist.SecondaryIndex'
include_class 'com.sleepycat.persist.StoreConfig'
include_class 'com.sleepycat.persist.model.Entity'
include_class 'com.sleepycat.persist.model.Persistent'
include_class 'com.sleepycat.persist.model.PrimaryKey'
include_class 'com.sleepycat.persist.model.SecondaryKey'
include_class 'com.sleepycat.persist.model.DeleteAction'
include_class 'persist.Person'
include_class 'persist.PersonExample'
# Create a JE Environment and Database. Make them transactional.
envConf = EnvironmentConfig.new()
envConf.setAllowCreate(true)
envConf.setTransactional(true)
f = File.new('/export/home/cwl/work-jruby/JE')
env = Environment.new(f, envConf);
# Open a transactional entity store.
storeConfig = StoreConfig.new();
storeConfig.setAllowCreate(true);
storeConfig.setTransactional(true);
store = EntityStore.new(env, "PersonStore", storeConfig);
class PersonAccessor
attr_accessor :personBySsn, :personByParentSsn
def init(store)
stringClass = java.lang.Class.forName('java.lang.String')
personClass = java.lang.Class.forName('persist.Person')
@personBySsn = store.getPrimaryIndex(stringClass, personClass)
@personByParentSsn =
store.getSecondaryIndex(@personBySsn, stringClass, "parentSsn");
end
end
dao = PersonAccessor.new(store)
dao.init(store)
personBySsn = dao.personBySsn
person = Person.new('Bob Smith', '111-11-1111', nil)
personBySsn.put(person);
person = Person.new('Mary Smith', '333-33-3333', '111-11-1111')
personBySsn.put(person);
person = Person.new('Jack Smith', '222-22-2222', '111-11-1111')
personBySsn.put(person);
# Get Bob by primary key using the primary index.
bob = personBySsn.get("111-11-1111")
puts "Lookup of Bob => #{bob.name}, #{bob.ssn}"
children = dao.personByParentSsn.subIndex(bob.ssn).entities()
puts "\nRetrieving children of Bob"
while (true) do
child = children.next()
break if child == nil
puts "#{child.name}, #{child.ssn}"
end
children.close()
store.close
env.close
end -
Berkeley DB Java Edition and Amazon AWS/EC2, EBS
In a previous OTN thread titled [BerkeleyDB and Amazon EC2/S3|http://forums.oracle.com/forums/thread.jspa?messageID=2627679&tstart=0] questions were raised about using Berkeley DB Java Edition on AWS/EC2. Specifically,
(1) Does JE work on AWS/EC2, and
(2) Can S3 be used as a persistent store for JE.
To follow up on this, recently I have done some work validating JE on AWS and am happy to report that it works fine (there should be no surprise there). I have run it under 32b and 64b Ubuntu distros with Java 6, but I have no reason to think that it doesn't work on other platforms.
On the second question, I did no work with S3 as a persistent store. Rather, I ran JE with both the Instance Local Storage and with an EBS volume as Environment storage. In the Instance Local Storage case, AWS/EC2 makes no guarantees of durability if the instance fails. In the EBS case, the durability guarantees are much stronger. Both of these storage mechanisms worked fine with JE.
I call attention to the performance that I observed with EBS on an m1.large instance type. Raw write/fsync operations were on the order of 1.99 msec which is quite fast. A discussion of this can be found in this [AWS Forum thread|http://developer.amazonwebservices.com/connect/thread.jspa?messageID=111957𛕕].
Charles LambMorgan,
Yes, we currently plan to only offer replication for Java 1.5. Our motivations are split between the speed consideration and the codeline issues. We've seen better performance with 1.5. Also taking full advantage of the type safety and concurrent support in 1.5 can end up affecting implementation choices significantly, and can make 1.4 code and 1.5 code diverge a lot.
As for bug fixing on the 1.4 releases, we don't yet have an official plan. We care very much about supporting our open source users and have been able to provide backwards patches where critical in the past. However, the cost of backporting between 1.5 and 1.4 may be high for some bug fixes, and we'll probably have to decide case by case.
Regards,
Linda -
Berkeley DB Java Edition 3.3.69 is available
Berkeley DB Java Edition (JE) 3.3.69 is now available for download. The release contains a number of bug fixes, some to problems posted on the OTN forum. The full list of changes may be found in the change log.
<br>
<br>
There is one critical bug fix in this release, described in the change log as follows:
<br>
<br>
"Fix a bug that prevents opening an Environment as read-only under certain circumstances, or causes queries in a read-only Environment to return out of date, and possibly transactionally incorrect, data. The LogFileNotFoundException may be thrown when the problem occurs. [#16368]"
<br>
<br>
This is a fix to a bug that was introduced in JE 3.3.62. If you are currently using 3.3.62 and you are opening the Environment read-only or using the DbDump utility (which opens the Environment read-only), then we strongly recommend that you upgrade to JE 3.3.69.
<br>
<br>
The corresponding Maven POM will be available in a few days.
<br>
<br>
If you are using the JE wrapper plugin for your own Eclipse plugin development AND you open the Environment read-only, you should update that package through
download.oracle.com/berkeley-db/eclipse. Other DPL Assistant users can consider the update to be optional.Morgan,
Yes, we currently plan to only offer replication for Java 1.5. Our motivations are split between the speed consideration and the codeline issues. We've seen better performance with 1.5. Also taking full advantage of the type safety and concurrent support in 1.5 can end up affecting implementation choices significantly, and can make 1.4 code and 1.5 code diverge a lot.
As for bug fixing on the 1.4 releases, we don't yet have an official plan. We care very much about supporting our open source users and have been able to provide backwards patches where critical in the past. However, the cost of backporting between 1.5 and 1.4 may be high for some bug fixes, and we'll probably have to decide case by case.
Regards,
Linda -
Berkeley DB Java Edition 3.3.62 is available
All,
Berkeley DB Java Edition (JE) 3.3.62 is now available for download at http://www.oracle.com/technology/software/products/berkeley-db/je/index.html . The release contains new features and bug fixes, many in response to questions and requests posted on this forum. Thanks to all for your help in reporting problems, describing use cases, and patiently waiting for features to appear.
There's improvements in performance, cache management and memory and disk space utilization. Highlights include:
* Multiple JE environments can now share the same cache to make better use of memory.
* The deferred write mode can be configured to differentiate between truly temporary databases and databases which should be persistent.
* Better cache management for large numbers of databases.
* Per operation caching policy.
* Key prefixing.
* Performance improvements.
Note that JE 3.3.62 introduces a forward-compatible on-disk file format change from JE 3.2. And for the first time, this release introduces a binary and API incompatibility that will hopefully affect few of you. The full list of changes may be found at http://www.oracle.com/technology/documentation/berkeley-db/je/changeLog.html
We welcome your continued feedback on the product and feature requests.
Regards,
The JE teamMorgan,
Yes, we currently plan to only offer replication for Java 1.5. Our motivations are split between the speed consideration and the codeline issues. We've seen better performance with 1.5. Also taking full advantage of the type safety and concurrent support in 1.5 can end up affecting implementation choices significantly, and can make 1.4 code and 1.5 code diverge a lot.
As for bug fixing on the 1.4 releases, we don't yet have an official plan. We care very much about supporting our open source users and have been able to provide backwards patches where critical in the past. However, the cost of backporting between 1.5 and 1.4 may be high for some bug fixes, and we'll probably have to decide case by case.
Regards,
Linda -
Should i use the Java edition ?
Hi,
i'm not sure if i should use the Java edition or the "normal" edition of the berkeley db.
My application is developed in Java, but i won't be using either JTA, JCA or JMX.
Is there still any advantage to be taken from using the Java edition ?
ThanksThere are many minor differences, e.g., JE has somewhat better write performance, DB uses somewhat less memory, DB has an SQL interface and JE does not. But overall, the two products are very similar, so for most questions you might ask, the answer is going to be "about the same".
If you want to choose the best product for your app, you'll have to define the very specific criteria that are most important to you. If you care most about getting every ounce of performance out of a specific piece of hardware, using a specific amount of memory, for a specific app (access pattern), then you'll have to write a test and do a comparison.
--mark -
Sneak Preview Update: Full Java Edition is now available on NW04 SP15
Hi SDNers,
Here's something that might make your new year more interesting... We just released the SP15 version of the <a href="https://www.sdn.sap.comhttp://www.sdn.sap.comhttp://www.sdn.sap.com/irj/sdn/downloaditem?rid=/library/uuid/cfc19866-0401-0010-35b2-dc8158247fb6">sneak Preview SAP NetWeaver: Full Java Edition</a> on SDN.
This version - like its SP11 predecessor - includes the following components:
- SAP NetWeaver Application Server (Java)
- SAP NetWeaver Developer Studio
- SAP Enterprise Portal
- SAP Knowledge Management
- SAP Composite Application Framework including Guided Procedures
- Interactive Forms based on Adobe Software
Note: We've updated the system requirements and installation instructions, so please take the time to read through the information carefully.
You'll need to download 4 rather large files with this release (total approx. 5GB), so your patience is required! Especially in the beginning when everyone is trying to download at the same time, expect that the server performance will suffer. You might try downloading at off-peak hours to avoid the rush.
Please post your questions and comments about the Full Java Edition in this discussion forum and we'll try to get you an answer as soon as possible.
Enjoy and Happy New Year!
Kathy Clemens, SDNHi SDNers,
i tried to install NW04-Java-SP15 with following error:
ERROR 2006-01-02 23:24:28 [iaxxejsbas.cpp:170]
EJS_ErrorReporter
FJS-00003 TypeError: (new FileMgt()).getNode(PropertyFileFullPath) has no properties (in script InstallationScript_21, line 8488: ???)
WARNING 2006-01-02 23:24:28 [iaxxccntrl.cpp:477]
CController::stepExecuted()
The step readSourceProperties with step key J2EE_SystemCopy_OneHost|ind|ind|ind|WebAS|640|0|J2EE_System
Copy|ind|ind|ind|ind|ind|0|readSourceProperties was executed with status ERROR.
The system requirements are all fulfilled.
Whats the problem? I have no ideas anymore.
Of course I started the installation with admin user.
Thanks a lot for any help.
Best Regards
Steffen -
Has anyone been able to install the java edition?
I've been trying for the past 3 days to install the sneak preview Java edition.
I've tried it on two machines.
1. Windows 2003, 1Gig RAM, 80GB HD, +min. requirements
2. XP Pro, 1Gig RAM, 60GB HD, +min. requirements
Nothing works. The install always stops at "load database content".
If anyone has sucessfully installed the Java version, I'd like to hear from you.Oliver,
Here's my latest attempt at installing this preview. I'll write every step I'm taking just to make sure we are on the same page. By the way, I'm putting a lot of efforts into this because my company is hesitating between SAP and Oracle as a portal engine. My task is to come up with a demo asap. So needless to say any help with this would be greatly appreciated.
Steps...
Format HD in NTFS
Install Windows 2003
Get updates for Windows 2003 - Reboot
Install JDK (j2sdk1.4.2_08)
Get JDK Updates - Reboot
Start the SAP Install
- Page 1: Point to JDK folder
- Page 2: . DB ID: J2E (Read only)
. Mirror log volume: No
. CPUs Used: 1 (Read only)
. I/O Buffer: 128 (as recommended)
- Page 3: Log Volumes: c:/ - 3000
- Page 4: Data Volume: c:/ - 3000
- Page 5: Confirmation - start
After about an hour, the install reports an error.
Here is the log information generated by the SAPinst window and the sapinst_dev.log file:
Log information generated by the SAPinst window:
ERROR 2005-06-20 11:32:17 ianxbservi.hpp:235
CServiceHandle::Open(SAPOsCol)
FSL-06002 Error 1060 (The specified service does not exist as an installed service.
) in execution of a 'OpenService' function, line (255), with parameter (SAPOsCol).
ERROR 2005-06-20 11:32:47 ianxbservi.hpp:235
CServiceHandle::Open(SAPJ2E_01)
FSL-06002 Error 1060 (The specified service does not exist as an installed service.
) in execution of a 'OpenService' function, line (255), with parameter (SAPJ2E_01).
ERROR 2005-06-20 11:32:47 ianxbservi.hpp:235
CServiceHandle::Open(SAPJ2E_01)
FSL-06002 Error 1060 (The specified service does not exist as an installed service.
) in execution of a 'OpenService' function, line (255), with parameter (SAPJ2E_01).
ERROR 2005-06-20 11:32:47 ianxbservi.hpp:235
CServiceHandle::Open(SAPJ2E_00)
FSL-06002 Error 1060 (The specified service does not exist as an installed service.
) in execution of a 'OpenService' function, line (255), with parameter (SAPJ2E_00).
ERROR 2005-06-20 11:32:47 ianxbservi.hpp:235
CServiceHandle::Open(SAPJ2E_00)
FSL-06002 Error 1060 (The specified service does not exist as an installed service.
) in execution of a 'OpenService' function, line (255), with parameter (SAPJ2E_00).
ERROR 2005-06-20 11:33:28 ianxbservi.hpp:235
CServiceHandle::Open(SAPOsCol)
FSL-06002 Error 1060 (The specified service does not exist as an installed service.
) in execution of a 'OpenService' function, line (255), with parameter (SAPOsCol).
ERROR 2005-06-20 12:20:09
CJSlibModule::writeError_impl()
CJS-20065 Execution of JLoad tool 'C:j2sdk1.4.2_08/bin/java.exe '-classpath' './sharedlib/antlr.jar;./sharedlib/exception.jar;./sharedlib/jddi.jar;./sharedlib/jload.jar;./sharedlib/logging.jar;./sharedlib/offlineconfiguration.jar;./sharedlib/opensqlsta.jar;./sharedlib/tc_sec_secstorefs.jar;c:sapdbprograms
untimejarsapdbc.jar;C:/usr/sap/J2E/SYS/global/security/lib/tools/iaik_jce_export.jar;C:/usr/sap/J2E/SYS/global/security/lib/tools/iaik_jsse.jar;C:/usr/sap/J2E/SYS/global/security/lib/tools/iaik_smime.jar;C:/usr/sap/J2E/SYS/global/security/lib/tools/iaik_ssl.jar;C:/usr/sap/J2E/SYS/global/security/lib/tools/w3c_http.jar' '-showversion' '-Xmx512m' 'com.sap.inst.jload.Jload' '-sec' 'J2E,jdbc/pool/J2E,C:usrsapJ2ESYSglobal/security/data/SecStore.properties,C:usrsapJ2ESYSglobal/security/data/SecStore.key' '-dataDir' 'C:/NW04SneakPrevJavaSP11/NWSneakPreviewSP11/SAP_NetWeaver_04_SR_1_Installation_Master_DVD__ID__51030843IM01_NT_I386....SneakPreviewContentJDMP' '-job' 'C:PROGRA1SAPINS1NW04SR1WEBAS_1ONE_HOST/IMPORT.XML' '-log' 'C:PROGRA1SAPINS1NW04SR1WEBAS_1ONE_HOST/jload.log'' aborts with returncode 2. Check 'C:PROGRA1SAPINS1NW04SR1WEBAS_1ONE_HOST/jload.log' and 'C:PROGRA1SAPINS1NW04SR1WEBAS_1ONE_HOST/jload.java.log' for more information.
sapinst_dev.log
TRACE iaxxccontrolfile.cpp:344
CControlFile::getMessageFilePath()
Running with messages from C:/PROGRA1/SAPINS1/NW04SR1/WEBAS_~1/ONE_HOST
TRACE sapinst.cpp:306
CSapInst::initMessaging()
This is SAPinst, version 642, build 703609
compiled on Nov 21 2004, 22:48:58
TRACE sapinst.cpp:311
CSapInst::initMessaging()
Gui connected by user Administrator from host server3
TRACE syxxsyshlp.cpp:133
syslib::logSystemState()
Process environment
===================
Environment Variables
=====================
= C:=C:PROGRA1SAPINS1NW04SR1WEBAS_~1ONE_HOST
ALLUSERSPROFILE = C:Documents and SettingsAll Users
APPDATA = C:Documents and SettingsAdministratorApplication Data
ClusterLog = C:WINDOWSClustercluster.log
CommonProgramFiles = C:Program FilesCommon Files
COMPUTERNAME = SERVER3
ComSpec = C:WINDOWSsystem32cmd.exe
FP_NO_HOST_CHECK = NO
HOMEDRIVE = C:
HOMEPATH = Documents and SettingsAdministrator
LOGONSERVER =
SERVER3
NUMBER_OF_PROCESSORS = 1
OS = Windows_NT
Path = C:WINDOWSsystem32;C:WINDOWS;C:WINDOWSSystem32Wbem
PATHEXT = .COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH
PROCESSOR_ARCHITECTURE = x86
PROCESSOR_IDENTIFIER = x86 Family 15 Model 2 Stepping 9, GenuineIntel
PROCESSOR_LEVEL = 15
PROCESSOR_REVISION = 0209
ProgramFiles = C:Program Files
SAPINST_EXEDIR_CD = C:/Program Files/sapinst_instdir/NW04SR1/WEBAS_COPY/ONE_HOST
SESSIONNAME = Console
SystemDrive = C:
SystemRoot = C:WINDOWS
TEMP = C:DOCUME1ADMINI1LOCALS~1Temp
TMP = C:DOCUME1ADMINI1LOCALS~1Temp
USERDOMAIN = SERVER3
USERNAME = Administrator
USERPROFILE = C:Documents and SettingsAdministrator
windir = C:WINDOWS
User: SERVER3Administrator, Id: S-1-5-21-2014860405-2990321232-2395399597-500
Working directory: C:PROGRA1SAPINS1NW04SR1WEBAS_~1ONE_HOST
Current access token
====================
Could not get thread token. Last error: 1008. I assume that no thread token exists.
Got process token.
Privileges:
Privilege SeBackupPrivilege, display name: Back up files and directories, not enabled.
Privilege SeRestorePrivilege, display name: Restore files and directories, not enabled.
Privilege SeShutdownPrivilege, display name: Shut down the system, not enabled.
Privilege SeDebugPrivilege, display name: Debug programs, not enabled.
Privilege SeAssignPrimaryTokenPrivilege, display name: Replace a process level token, not enabled.
Privilege SeIncreaseQuotaPrivilege, display name: Adjust memory quotas for a process, not enabled.
Privilege SeSystemEnvironmentPrivilege, display name: Modify firmware environment values, not enabled.
Privilege SeChangeNotifyPrivilege, display name: Bypass traverse checking, enabled.
Privilege SeRemoteShutdownPrivilege, display name: Force shutdown from a remote system, not enabled.
Privilege SeTcbPrivilege, display name: Act as part of the operating system, not enabled.
Privilege SeUndockPrivilege, display name: Remove computer from docking station, not enabled.
Privilege SeSecurityPrivilege, display name: Manage auditing and security log, not enabled.
Privilege SeTakeOwnershipPrivilege, display name: Take ownership of files or other objects, not enabled.
Privilege SeLoadDriverPrivilege, display name: Load and unload device drivers, not enabled.
Privilege SeManageVolumePrivilege, display name: Perform volume maintenance tasks, not enabled.
Privilege SeSystemProfilePrivilege, display name: Profile system performance, not enabled.
Privilege SeImpersonatePrivilege, display name: Impersonate a client after authentication, enabled.
Privilege SeSystemtimePrivilege, display name: Change the system time, not enabled.
Privilege SeCreateGlobalPrivilege, display name: Create global objects, enabled.
Privilege SeProfileSingleProcessPrivilege, display name: Profile single process, not enabled.
Privilege SeIncreaseBasePriorityPrivilege, display name: Increase scheduling priority, not enabled.
Privilege SeCreatePagefilePrivilege, display name: Create a pagefile, not enabled.
TRACE syxxsyshlp.cpp:143
syslib::logSystemState()
System information
==================
OS version, host name: Microsoft Windows NT SERVER3
RAM size (MB): 1015.5
Swap size (MB): 2453.52
TRACE iaxxclientacceptor.cpp:124
CClientAcceptor::acceptImpl()
Running with control file C:/PROGRA1/SAPINS1/NW04SR1/WEBAS_~1/ONE_HOST/control.xml version 0 and changelist not defined
TRACE iaxxccontrolfile.cpp:235
CControlFile::getDialogControlFileName()
Running with dialog control file C:/PROGRA1/SAPINS1/NW04SR1/WEBAS_~1/ONE_HOST/dialog.xml
TRACE iaxxccontrolfile.cpp:184
CControlFile::getResourecFileName()
Running with resource file C:/PROGRA1/SAPINS1/NW04SR1/WEBAS_~1/ONE_HOST/helppool.xml
INFO 2005-06-20 11:18:54 syxxcfile.cpp:325
CSyFileImpl::copy(const CSyPath & q0w9e9r8t7.1.xml, ISyNode::eCopyMode 3, ISyProgressObserver*) const
Copying file C:/PROGRA1/SAPINS1/NW04SR1/WEBAS_~1/ONE_HOST/keydb.xml to: q0w9e9r8t7.1.xml.
INFO 2005-06-20 11:18:54 syxxcfile.cpp:446
CSyFileImpl::copy(const CSyPath & q0w9e9r8t7.1.xml, ISyNode::eCopyMode 3, ISyProgressObserver*) const
Copying file C:/PROGRA1/SAPINS1/NW04SR1/WEBAS_~1/ONE_HOST/keydb.xml to: q0w9e9r8t7.1.xml.
TRACE iaxxclib.cpp:165
load()
Opened iaccdlib.dll
TRACE iaxxccontrolfile.cpp:77
CControlFile::getControlFilePath()
Running with control file path C:/PROGRA1/SAPINS1/NW04SR1/WEBAS_~1/ONE_HOST
TRACE iaxxcdgprc.cpp:635
CDialogProcessor::processDialogs()
Executing dialog step Preinstall|ind|ind|ind|ind|ind|0|changeUserInstall
TRACE iaxxclib.cpp:165
load()
Opened iamodos.dll
TRACE synxccuren.cpp:780
CSyCurrentProcessEnvironmentImpl::getEffectiveUser(iastring&)
effective user corresponds to real user
INFO 2005-06-20 11:18:59 syxxcfile.cpp:325
CSyFileImpl::copy(const CSyPath & C:/PROGRA1/SAPINS1/NW04SR1/WEBAS_~1/ONE_HOST/change.1.log, ISyNode::eCopyMode 3, ISyProgressObserver*) const
Copying file C:/PROGRA1/SAPINS1/NW04SR1/WEBAS_1/ONE_HOST/change.log to: C:/PROGRA1/SAPINS1/NW04SR1/WEBAS_1/ONE_HOST/change.1.log.
INFO 2005-06-20 11:18:59 syxxcfile.cpp:446
CSyFileImpl::copy(const CSyPath & C:/PROGRA1/SAPINS1/NW04SR1/WEBAS_~1/ONE_HOST/change.1.log, ISyNode::eCopyMode 3, ISyProgressObserver*) const
Copying file C:/PROGRA1/SAPINS1/NW04SR1/WEBAS_1/ONE_HOST/change.log to: C:/PROGRA1/SAPINS1/NW04SR1/WEBAS_1/ONE_HOST/change.1.log.
INFO 2005-06-20 11:18:59 synxcpath.cpp:834
CSyPath::createFile()
Creating file C:Program Filessapinst_instdirNW04SR1WEBAS_COPYONE_HOSTchange.1.log.
INFO 2005-06-20 11:18:59 synxcfile.cpp:152
CSyFileImpl::remove()
Removing file C:PROGRA1SAPINS1NW04SR1WEBAS_~1ONE_HOSTchange.log.
TRACE iaxxejsexp.cpp:208
EJS_Installer::writeTraceToLogBook()
nodeType: 'UNKNOWN'
INFO 2005-06-20 11:18:59 synxcpath.cpp:834
CSyPath::createFile()
Creating file C:Program Filessapinst_instdirNW04SR1WEBAS_COPYONE_HOSTchange.log.
TRACE iaxxclib.cpp:165
load()
Opened iajsmod.dll
INFO 2005-06-20 11:19:00
CJSlibModule::writeInfo_impl()
Output of change 'user' '/install' is written to the logfile change.log.
WARNING 2005-06-20 11:19:00
CJSlibModule::writeWarning_impl()
Execution of the command "change 'user' '/install'" finished with return code 1. Output:
Install mode does not apply to a Terminal server configured for remote administration.
TRACE iaxxccntrl.cpp:493
CController::stepExecuted()
The step changeUserInstall with key Preinstall|ind|ind|ind|ind|ind|0|changeUserInstall has been executed successfully.
TRACE iaxxcdgprc.cpp:635
CDialogProcessor::processDialogs()
Executing dialog step Preinstall|ind|ind|ind|ind|ind|0|AddPrivilege
TRACE synxccuren.cpp:780
CSyCurrentProcessEnvironmentImpl::getEffectiveUser(iastring&)
effective user corresponds to real user
TRACE synxccuren.cpp:780
CSyCurrentProcessEnvironmentImpl::getEffectiveUser(iastring&)
effective user corresponds to real user
TRACE iaxxclib.cpp:165
load()
Opened iamodnt.dll
TRACE ianxbusprv.cpp:288
CIaNtUserPrivileges::add_impl(., SERVER3Administrator, SeTcbPrivilege SeAssignPrimaryTokenPrivilege SeIncreaseQuotaPrivilege)
Ignored existing privilege: SeTcbPrivilege
TRACE ianxbusprv.cpp:288
CIaNtUserPrivileges::add_impl(., SERVER3Administrator, SeTcbPrivilege SeAssignPrimaryTokenPrivilege SeIncreaseQuotaPrivilege)
Ignored existing privilege: SeAssignPrimaryTokenPrivilege
TRACE ianxbusprv.cpp:288
CIaNtUserPrivileges::add_impl(., SERVER3Administrator, SeTcbPrivilege SeAssignPrimaryTokenPrivilege SeIncreaseQuotaPrivilege)
Ignored existing privilege: SeIncreaseQuotaPrivilege
INFO 2005-06-20 11:19:00 ianxbusprv.cpp:337
CIaNtUserPrivileges::add_impl(., SERVER3Administrator, SeTcbPrivilege SeAssignPrimaryTokenPrivilege SeIncreaseQuotaPrivilege)
Successfully added privileges 'SeTcbPrivilege SeAssignPrimaryTokenPrivilege SeIncreaseQuotaPrivilege' to account 'SERVER3Administrator' on host '.'.
TRACE iaxxccntrl.cpp:493
CController::stepExecuted()
The step AddPrivilege with key Preinstall|ind|ind|ind|ind|ind|0|AddPrivilege has been executed successfully.
TRACE iaxxcdgprc.cpp:635
CDialogProcessor::processDialogs()
Executing dialog step Preinstall|ind|ind|ind|ind|ind|0|replaceDLLs
INFO 2005-06-20 11:19:00
CJSlibModule::writeInfo_impl()
File not found: .
INFO 2005-06-20 11:19:00
CJSlibModule::writeInfo_impl()
File not found: .
TRACE iaxxccntrl.cpp:493
CController::stepExecuted()
The step replaceDLLs with key Preinstall|ind|ind|ind|ind|ind|0|replaceDLLs has been executed successfully.
TRACE iaxxcdgprc.cpp:635
CDialogProcessor::processDialogs()
Executing dialog step Preinstall|ind|ind|ind|ind|ind|0|registerEventsDll
TRACE iaxxejsexp.cpp:208
EJS_Installer::writeTraceToLogBook()
C:/DOCUME1/ADMINI1/LOCALS~1/Temp/sapinst_exe.248.1119280670/sapinstevents.dll not found.
TRACE iaxxejsexp.cpp:208
EJS_Installer::writeTraceToLogBook()
C:/NW04SneakPrevJavaSP11/NWSneakPreviewSP11/SAP_NetWeaver_04_SR_1_Installation_Master_DVD__ID__51030843IM01_NT_I386SAPINST/NT/I386/sapinstevents.dll not found.
TRACE synxcfile.cpp:134
CSyFileImpl::getFileVersion()
file C:/PROGRA1/SAPINS1/NW04SR1/WEBAS_~1/ONE_HOST/sapinstevents.dll has version 693717.642
TRACE synxcfile.cpp:134
CSyFileImpl::getFileVersion()
file C:/WINDOWS/system32/SAPinst/sapinstevents.dll has version 703609.642
TRACE syxxcfile.cpp:240
CSyFileImpl::copy(const CSyPath & C:/WINDOWS/system32/SAPinst/sapinstevents.dll, ISyNode::eCopyMode 545, ISyProgressObserver*) const
Did not copy file C:/PROGRA1/SAPINS1/NW04SR1/WEBAS_~1/ONE_HOST/sapinstevents.dll to: C:/WINDOWS/system32/SAPinst/sapinstevents.dll (source file version is not higher than target file version)
TRACE iaxxccntrl.cpp:493
CController::stepExecuted()
The step registerEventsDll with key Preinstall|ind|ind|ind|ind|ind|0|registerEventsDll has been executed successfully.
TRACE iaxxcdgprc.cpp:635
CDialogProcessor::processDialogs()
Executing dialog step Preinstall|ind|ind|ind|ind|ind|0|diSummarize
TRACE iaxxccntrl.cpp:493
CController::stepExecuted()
The step diSummarize with key Preinstall|ind|ind|ind|ind|ind|0|diSummarize has been executed successfully.
TRACE iaxxcdgprc.cpp:635
CDialogProcessor::processDialogs()
Executing dialog step Preinstall|ind|ind|ind|ind|ind|0|diProgress
TRACE iaxxccntrl.cpp:493
CController::stepExecuted()
The step diProgress with key Preinstall|ind|ind|ind|ind|ind|0|diProgress has been executed successfully.
INFO 2005-06-20 11:19:01 synxcpath.cpp:834
CSyPath::createFile()
Creating file C:Program Filessapinst_instdirNW04SR1WEBAS_COPYONE_HOSTsummary.html.
PHASE 2005-06-20 11:19:01 iaxxcwalker.cpp:416
CDomWalker::printPhaseInfo()
Prepare the installation program.
TRACE iaxxcwalker.cpp:55
CDomWalker::walk()
Installation start: Monday, 20 June 2005, 11:18:54; installation directory: C:PROGRA1SAPINS1NW04SR1WEBAS_~1ONE_HOST; product to be installed: SAP NetWeaver Sneak Preview '04 Support Release 1> Migration - Target System Installation
TRACE iaxxclib.cpp:165
load()
Opened iamodora.dll
TRACE iaxxccntrl.cpp:398
CController::activateEvaluator()
The controller registered the module COraInputChecker
TRACE iaxxclib.cpp:165
load()
Opened iamodada.dll
TRACE iaxxccntrl.cpp:398
CController::activateEvaluator()
The controller registered the module CIaSdbActor
TRACE iaxxcdgprc.cpp:635
CDialogProcessor::processDialogs()
Executing dialog step J2EE_SystemCopy_OneHost|ind|ind|ind|WebAS|640|0|eula
TRACE iaxxgenimp.cpp:189
showDialog()
showing dlg diLicense_j2ee
TRACE iaxxgenimp.cpp:205
showDialog()
TRACE iaxxgenimp.cpp:845
showDialog()
waiting for an answer from gui
TRACE iaxxdlghnd.cpp:98
CDialogHandler::doHandleDoc()
CDialogHandler: ACTION_NEXT requested
TRACE iaxxgenimp.cpp:212
showDialog()
TRACE iaxxccntrl.cpp:493
CController::stepExecuted()
The step eula with key J2EE_SystemCopy_OneHost|ind|ind|ind|WebAS|640|0|eula has been executed successfully.
TRACE iaxxcdgprc.cpp:635
CDialogProcessor::processDialogs()
Executing dialog step J2EE_SystemCopy_OneHost|ind|ind|ind|WebAS|640|0|fillContext
TRACE iaxxejsexp.cpp:208
EJS_Installer::writeTraceToLogBook()
t_J2EE_SystemCopy.remove(WHERE 1=1)
TRACE iaxxejsexp.cpp:208
EJS_Installer::writeTraceToLogBook()
t_J2EE_SystemCopy.insertRow(), inserting
TRACE iaxxccntrl.cpp:493
CController::stepExecuted()
The step fillContext with key J2EE_SystemCopy_OneHost|ind|ind|ind|WebAS|640|0|fillContext has been executed successfully.
TRACE iaxxcdgprc.cpp:635
CDialogProcessor::processDialogs()
Executing dialog step J2EE_SystemCopy_OneHost|ind|ind|ind|WebAS|640|0|J2EE_SystemCopy|ind|ind|ind|ind|ind|0|requestCDs
TRACE cdxxccdcli.cpp:202
CCdClientImpl::makeSomePackagesAvailable
CD Client for Component J2EE_SystemCopy|ind|ind|ind|ind|ind
TRACE iaxxccntrl.cpp:493
CController::stepExecuted()
The step requestCDs with key J2EE_SystemCopy_OneHost|ind|ind|ind|WebAS|640|0|J2EE_SystemCopy|ind|ind|ind|ind|ind|0|requestCDs has been executed successfully.
TRACE iaxxcdgprc.cpp:635
CDialogProcessor::processDialogs()
Executing dialog step J2EE_SystemCopy_OneHost|ind|ind|ind|WebAS|640|0|J2EE_SystemCopy|ind|ind|ind|ind|ind|0|readSourceProperties
TRACE iaxxejsexp.cpp:208
EJS_Installer::writeTraceToLogBook()
Instance name of source CI is 'JC00', J2EE standalone is 'true'. The following J2EE applications were installed on the source system: portal,kmc,adobe.
TRACE iaxxccntrl.cpp:493
CController::stepExecuted()
The step readSourceProperties with key J2EE_SystemCopy_OneHost|ind|ind|ind|WebAS|640|0|J2EE_SystemCopy|ind|ind|ind|ind|ind|0|readSourceProperties has been executed successfully.
TRACE iaxxcdgprc.cpp:635
CDialogProcessor::processDialogs()
Executing dialog step J2EE_SystemCopy_OneHost|ind|ind|ind|WebAS|640|0|J2EE_SystemCopy|ind|ind|ind|ind|ind|0|updateApplTable
INFO 2005-06-20 11:19:44
CJSlibModule::writeInfo_impl()
This SAPinst Java System Copy is Property File Version : 1.1
INFO 2005-06-20 11:19:44
CJSlibModule::writeInfo_impl()
This SAPinst EXE uses OS Build Version : I386
INFO 2005-06-20 11:19:44
CJSlibModule::writeInfo_impl()
This SAPinst XML is DB Build Version : ada
TRACE iaxxccntrl.cpp:493
CController::stepExecuted()
The step updateApplTable with key J2EE_SystemCopy_OneHost|ind|ind|ind|WebAS|640|0|J2EE_SystemCopy|ind|ind|ind|ind|ind|0|updateApplTable has been executed successfully.
TRACE iaxxcdgprc.cpp:635
CDialogProcessor::processDialogs()
Executing dialog step J2EE_SystemCopy_OneHost|ind|ind|ind|WebAS|640|0|J2EE_SystemCopy|ind|ind|ind|ind|ind|0|fillContext
TRACE iaxxejsexp.cpp:208
EJS_Installer::writeTraceToLogBook()
t_J2EE_Dialogs.remove(WHERE 1=1)
TRACE iaxxejsexp.cpp:208
EJS_Installer::writeTraceToLogBook()
t_J2EE_Dialogs.insertRow(), inserting
TRACE iaxxejsexp.cpp:208
EJS_Installer::writeTraceToLogBook()
t_syscopy_post_steps.remove(WHERE 1=1)
TRACE iaxxejsexp.cpp:208
EJS_Installer::writeTraceToLogBook()
t_syscopy_post_steps.insertRow(), inserting
TRACE iaxxccntrl.cpp:493
CController::stepExecuted()
The step fillContext with key J2EE_SystemCopy_OneHost|ind|ind|ind|WebAS|640|0|J2EE_SystemCopy|ind|ind|ind|ind|ind|0|fillContext has been executed successfully.
TRACE iaxxcdgprc.cpp:635
CDialogProcessor::processDialogs()
Executing dialog step J2EE_SystemCopy_OneHost|ind|ind|ind|WebAS|640|0|J2EE_SystemCopy|ind|ind|ind|ind|ind|0|J2EE_EngineEnterpriseDialogs|ind|ind|ind|WebAS|630|0|readProductXml
TRACE iaxxejsexp.cpp:208
EJS_Installer::writeTraceToLogBook()
Reading additional shipment information from product.xml...
TRACE iaxxejsexp.cpp:208
EJS_Installer::writeTraceToLogBook()
tProductInfo.updateRow(, WHERE ROWNUM=0), updating
TRACE iaxxejsexp.cpp:208
EJS_Installer::writeTraceToLogBook()
IA_CONTR_DBPLATFORM.updateRow(, WHERE ROWNUM=0), updating
TRACE iaxxejsexp.cpp:208
EJS_Installer::writeTraceToLogBook()
Table: tWhat
TRACE iaxxccntrl.cpp:493
CController::stepExecuted()
The step readProductXml with key J2EE_SystemCopy_OneHost|ind|ind|ind|WebAS|640|0|J2EE_SystemCopy|ind|ind|ind|ind|ind|0|J2EE_EngineEnterpriseDialogs|ind|ind|ind|WebAS|630|0|readProductXml has been executed successfully.
TRACE iaxxcdgprc.cpp:635
CDialogProcessor::processDialogs()
Executing dialog step J2EE_SystemCopy_OneHost|ind|ind|ind|WebAS|640|0|J2EE_SystemCopy|ind|ind|ind|ind|ind|0|J2EE_EngineEnterpriseDialogs|ind|ind|ind|WebAS|630|0|setDefaults
TRACE iaxxejsexp.cpp:208
EJS_Installer::writeTraceToLogBook()
t_systems.remove(WHERE 1=1)
INFO[E] 2005-06-20 11:19:46 synxcfsmgt.cpp:132
CSyFileSystemMgtImpl::getFSExport(iastring)
File system export (share) saploc does not exist.
TRACE syxxcnamrs.cpp:278
PSyHostsEntry CSyIPNameResolverImpl::getHostByName(const iastring& hostName) const
IP name server3 resolves to IP address(es): 192.168.15.100
TRACE syxxcnamrs.cpp:208
PSyHostsEntry CSyIPNameResolverImpl::getHostByAddress(const iastring& ipAddress) const
IP address 192.168.15.100 resolves to IP name(s): server3
TRACE iaxxbhosts.cpp:674
CIaOsHosts::resolveHostName()
hostname after reverse lookup is: server3
INFO 2005-06-20 11:19:46
CJSlibModule::writeInfo_impl()
Looking for SAP system instances installed on this host...
INFO 2005-06-20 11:19:47
CJSlibModule::writeInfo_impl()
No installed instances found!
TRACE iaxxccntrl.cpp:493
CController::stepExecuted()
The step setDefaults with key J2EE_SystemCopy_OneHost|ind|ind|ind|WebAS|640|0|J2EE_SystemCopy|ind|ind|ind|ind|ind|0|J2EE_EngineEnterpriseDialogs|ind|ind|ind|WebAS|630|0|setDefaults has been executed successfully.
TRACE iaxxcdgprc.cpp:635
CDialogProcessor::processDialogs()
Executing dialog step J2EE_SystemCopy_OneHost|ind|ind|ind|WebAS|640|0|J2EE_SystemCopy|ind|ind|ind|ind|ind|0|J2EE_EngineEnterpriseDialogs|ind|ind|ind|WebAS|630|0|adminCheck
TRACE synxccuren.cpp:780
CSyCurrentProcessEnvironmentImpl::getEffectiveUser(iastring&)
lib=iamodos module=CIaOsExecutes
effective user corresponds to real user
TRACE iaxxccntrl.cpp:493
CController::stepExecuted()
The step adminCheck with key J2EE_SystemCopy_OneHost|ind|ind|ind|WebAS|640|0|J2EE_SystemCopy|ind|ind|ind|ind|ind|0|J2EE_EngineEnterpriseDialogs|ind|ind|ind|WebAS|630|0|adminCheck has been executed successfully.
TRACE iaxxcdgprc.cpp:635
CDialogProcessor::processDialogs()
Executing dialog step J2EE_SystemCopy_OneHost|ind|ind|ind|WebAS|640|0|J2EE_SystemCopy|ind|ind|ind|ind|ind|0|J2EE_EngineEnterpriseDialogs|ind|ind|ind|WebAS|630|0|DNSCheck
INFO 2005-06-20 11:19:48
CJSlibModule::writeInfo_impl()
DNS is configured correctly.
TRACE iaxxccntrl.cpp:493
CController::stepExecuted()
The step DNSCheck with key J2EE_SystemCopy_OneHost|ind|ind|ind|WebAS|640|0|J2EE_SystemCopy|ind|ind|ind|ind|ind|0|J2EE_EngineEnterpriseDialogs|ind|ind|ind|WebAS|630|0|DNSCheck has been executed successfully.
TRACE iaxxcdgprc.cpp:635
CDialogProcessor::processDialogs()
Executing dialog step J2EE_SystemCopy_OneHost|ind|ind|ind|WebAS|640|0|J2EE_SystemCopy|ind|ind|ind|ind|ind|0|J2EE_EngineEnterpriseDialogs|ind|ind|ind|WebAS|630|0|W2K_SPCheck
TRACE iaxxccntrl.cpp:493
CController::stepExecuted()
The step W2K_SPCheck with key J2EE_SystemCopy_OneHost|ind|ind|ind|WebAS|640|0|J2EE_SystemCopy|ind|ind|ind|ind|ind|0|J2EE_EngineEnterpriseDialogs|ind|ind|ind|WebAS|630|0|W2K_SPCheck has been executed successfully.
TRACE iaxxcdgprc.cpp:635
CDialogProcessor::processDialogs()
Executing dialog step J2EE_SystemCopy_OneHost|ind|ind|ind|WebAS|640|0|J2EE_SystemCopy|ind|ind|ind|ind|ind|0|J2EE_EngineEnterpriseDialogs|ind|ind|ind|WebAS|630|0|WXP_SPCheck
TRACE iaxxccntrl.cpp:493
CController::stepExecuted()
The step WXP_SPCheck with key J2EE_SystemCopy_OneHost|ind|ind|ind|WebAS|640|0|J2EE_SystemCopy|ind|ind|ind|ind|ind|0|J2EE_EngineEnterpriseDialogs|ind|ind|ind|WebAS|630|0|WXP_SPCheck has been executed successfully.
TRACE iaxxcdgprc.cpp:635
CDialogProcessor::processDialogs()
Executing dialog step J2EE_SystemCopy_OneHost|ind|ind|ind|WebAS|640|0|J2EE_SystemCopy|ind|ind|ind|ind|ind|0|J2EE_EngineEnterpriseDialogs|ind|ind|ind|WebAS|630|0|MemoryCheck
TRACE iaxxccntrl.cpp:493
CController::stepExecuted()
The step MemoryCheck with key J2EE_SystemCopy_OneHost|ind|ind|ind|WebAS|640|0|J2EE_SystemCopy|ind|ind|ind|ind|ind|0|J2EE_EngineEnterpriseDialogs|ind|ind|ind|WebAS|630|0|MemoryCheck has been executed successfully.
TRACE iaxxcdgprc.cpp:635
CDialogProcessor::processDialogs()
Executing dialog step J2EE_SystemCopy_OneHost|ind|ind|ind|WebAS|640|0|J2EE_SystemCopy|ind|ind|ind|ind|ind|0|J2EE_EngineEnterpriseDialogs|ind|ind|ind|WebAS|630|0|virtualHostCheck
TRACE iaxxccntrl.cpp:493
CController::stepExecuted()
The step virtualHostCheck with key J2EE_SystemCopy_OneHost|ind|ind|ind|WebAS|640|0|J2EE_SystemCopy|ind|ind|ind|ind|ind|0|J2EE_EngineEnterpriseDialogs|ind|ind|ind|WebAS|630|0|virtualHostCheck has been executed successfully.
TRACE iaxxcdgprc.cpp:635
CDialogProcessor::processDialogs()
Executing dialog step J2EE_SystemCopy_OneHost|ind|ind|ind|WebAS|640|0|J2EE_SystemCopy|ind|ind|ind|ind|ind|0|J2EE_EngineEnterpriseDialogs|ind|ind|ind|WebAS|630|0|fillMounts
TRACE iaxxejsexp.cpp:208
EJS_Installer::writeTraceToLogBook()
t_mounts.remove(WHERE 1=1)
TRACE iaxxejsexp.cpp:208
EJS_Installer::writeTraceToLogBook()
t_mounts.insertRow(), inserting
INFO[E] 2005-06-20 11:19:50 synxcfsmgt.cpp:132
CSyFileSystemMgtImpl::getFSExport(iastring)
File system export (share) saploc does not exist.
TRACE iaxxclib.cpp:165
load()
Opened iamodutl.dll
TRACE iaxxccntrl.cpp:493
CController::stepExecuted()
The step fillMounts with key J2EE_SystemCopy_OneHost|ind|ind|ind|WebAS|640|0|J2EE_SystemCopy|ind|ind|ind|ind|ind|0|J2EE_EngineEnterpriseDialogs|ind|ind|ind|WebAS|630|0|fillMounts has been executed successfully.
TRACE iaxxcdgprc.cpp:635
CDialogProcessor::processDialogs()
Executing dialog step J2EE_SystemCopy_OneHost|ind|ind|ind|WebAS|640|0|J2EE_SystemCopy|ind|ind|ind|ind|ind|0|J2EE_EngineEnterpriseDialogs|ind|ind|ind|WebAS|630|0|askWhat
TRACE iaxxccntrl.cpp:493
CController::stepExecuted()
The step askWhat with key J2EE_SystemCopy_OneHost|ind|ind|ind|WebAS|640|0|J2EE_SystemCopy|ind|ind|ind|ind|ind|0|J2EE_EngineEnterpriseDialogs|ind|ind|ind|WebAS|630|0|askWhat has been executed successfully.
TRACE iaxxcdgprc.cpp:635
CDialogProcessor::processDialogs()
Executing dialog step J2EE_SystemCopy_OneHost|ind|ind|ind|WebAS|640|0|J2EE_SystemCopy|ind|ind|ind|ind|ind|0|J2EE_EngineEnterpriseDialogs|ind|ind|ind|WebAS|630|0|askPrep
TRACE iaxxccntrl.cpp:493
CController::stepExecuted()
The step askPrep with key J2EE_SystemCopy_OneHost|ind|ind|ind|WebAS|640|0|J2EE_SystemCopy|ind|ind|ind|ind|ind|0|J2EE_EngineEnterpriseDialogs|ind|ind|ind|WebAS|630|0|askPrep has been executed successfully.
TRACE iaxxcdgprc.cpp:635
CDialogProcessor::processDialogs()
Executing dialog step J2EE_SystemCopy_OneHost|ind|ind|ind|WebAS|640|0|J2EE_SystemCopy|ind|ind|ind|ind|ind|0|J2EE_EngineEnterpriseDialogs|ind|ind|ind|WebAS|630|0|getJavaHome
INFO 2005-06-20 11:19:52 syxxcfile.cpp:325
CSyFileImpl::copy(const CSyPath & ., ISyNode::eCopyMode 3, ISyProgressObserver*) const
Copying file C:/NW04SneakPrevJavaSP11/NWSneakPreviewSP11/SAP_NetWeaver_04_SR_1_Java_DVD__ID__51030724/J2EE_OSINDEP/JDKVersion.xml to: ..
INFO 2005-06-20 11:19:52 syxxcfile.cpp:446
CSyFileImpl::copy(const CSyPath & ., ISyNode::eCopyMode 3, ISyProgressObserver*) const
Copying file C:/NW04SneakPrevJavaSP11/NWSneakPreviewSP11/SAP_NetWeaver_04_SR_1_Java_DVD__ID__51030724/J2EE_OSINDEP/JDKVersion.xml to: ..
INFO 2005-06-20 11:19:52 synxcpath.cpp:834
CSyPath::createFile()
Creating file C:Program Filessapinst_instdirNW04SR1WEBAS_COPYONE_HOSTJDKVersion.xml.
TRACE synxccuren.cpp:780
CSyCurrentProcessEnvironmentImpl::getEffectiveUser(iastring&)
effective user corresponds to real user
INFO[E] 2005-06-20 11:19:52 syxxccuren.hpp:189
CSyCurrentProcessEnvironmentImpl::getEnvironmentVariable(iastring)
Unable to get value for environment variable JAVA_HOME.
INFO 2005-06-20 11:19:53
CJSlibModule::writeInfo_impl()
Execution of the -
Can multiple threads share the same cursor in berkeley db java edition?
We use berkeley db to store our path computation results. We now have two threads which need to retrieve records from database. Specifically, the first thread accesses the database from the very beginning and read a certain number of records. Then, the second thread needs to access the database and read the rest records starting from the position where the cursor stops in the first thread. But, now, I cannot let these two threads share the same cursor. So, I have to open the database separately in two threads and use individual cursor for each thread. This means I have to in the second thread let the cursor skip the first certain number of records and then read the rest records. However, in this way, it is a waste of time letting the second thread skip a certain of records. It will be ideal for us that the second thread can start reading the record just from the place where the first thread stops. Actually, I have tried using transactional cursor and wanted to let the two threads share the same transactional cursor. But it seems that this didn't work.
Can anyone give any suggestion? Thank you so much!
sgaoIf your question is really about using the BDB Java Edition product please post to the JE forum:
Berkeley DB Java Edition
If your question is about using the Java API of the BDB (C-based) product, then this is the correct forum.
--mark -
Java edition compatible with standard edition?
Hi
I have a database created using Java edition 3.2.44
I want to write an application in C++ which reads this database using the standard Berkeley DB (possibly at the same time as the java application is also accessing them). Are the database files compatible?
I'm not too hopeful since the the database files are named something like 00000000.jdb and je.lck.
Any help appreciated
NickHi Nick,
This FAQ entry addresses this question:
[http://www.oracle.com/technology/products/berkeley-db/faq/je_faq.html#2|http://www.oracle.com/technology/products/berkeley-db/faq/je_faq.html#2]
(a small additional information to this entry is that DPL API has been introduced for BDB as well in 4.7.25)
As explained, the on-disk format for the database files is different. You should dump the database created with JE (using the DbDump/com.sleepycat.je.util.DbDump utility: [http://www.oracle.com/technology/documentation/berkeley-db/je/java/com/sleepycat/je/util/DbDump.html|http://www.oracle.com/technology/documentation/berkeley-db/je/java/com/sleepycat/je/util/DbDump.html]) and load it using BDB before opening it in a a program using one of the BDB APIs (using the db_load utility: [http://www.oracle.com/technology/documentation/berkeley-db/db/utility/db_load.html|http://www.oracle.com/technology/documentation/berkeley-db/db/utility/db_load.html] )
If you face any issues with dumping/loading the database let me know.
Regards,
Andrei -
DB High Availability - Java Edition
I am using Berkeley DB Java Edition to do writes and reads to my database. I am planning on having a cluster of databases with HA feature. I noticed that the feature set for Berkeley DB Java Editon does not include High Availabilty.
I did check the C example code that is available in the 4.4 version. I understand that I need to build a communication infrastructure in Java for master and replicated db's. Is there any example that I can follow, or any other materials available for doing HA in Java?I believe the answer in java replication example is relevant for you.
<p>
Please note that you should be able to build the communication infrastructure in C, and then still access DB via the Java interface layer from your Java program. (I.e., your communication infrastructure doesn't have to be in Java.)
<p>
Also, I hope it's clear that Berkeley DB Java Edition is a separate product. This is different from using Berkeley DB via its Java interface layer.
<p>
Alan Bram<br>
Oracle -
Use java edition and native edition at same time in a single java app
Hi
I have a situation where I need to use both versions of berkeley Db at the same time. I have an external library that I use that requires the Java edition and my own code that uses the native version. Unfortunately the source code of the library is not available and I don't want to redesign my program to use the Java edition.
Some packages in je.4.0.103.jar and db.jar (version 5.1) contain the same naming structure and same classes eg. com.sleepycat.persist.EntityStore. I removed the duplicated packages in je.4.0.103.jar However it seems that the implementation is slightly different between the two version as I get
java.lang.NoSuchMethodError: com.sleepycat.persist.EntityStore.<init>(Lcom/sleepycat/je/Environment;Ljava/lang/String;Lcom/sleepycat/persist/StoreConfig;)V
When I simply had both versions available my code for the native version kept using the packages from the Java edition and the external library kept on using the native version and as a result I got loads of runtime errors.
So how do I tell them apart. The problem is because both sets of packages have identical names and class names so Java does not know which ones to use. I am using eclipse so maybe there is some option where I can tell certain classes to use certain packages.
Any ideas?Hi,
We don't officially support using BDB and BDB JE from the same JVM process.
It's possible to work around this limitation by creating two [url http://download.oracle.com/javase/1.4.2/docs/api/java/lang/ClassLoader.html] Java Classloaders that load one of the two jar files. When calling BDB or BDB JE methods, the call must be bracketed with calls like this that cause the correct classloader to be used:
ClassLoader saveLoader = Thread.currentThread().getContextClassLoader();
Thread.currentThread().setContextClassLoader(/* specify correct loader for BDB or BDB JE here */);
try {
// do something with BDB or BDB JE
} finally {
Thread.currentThread().setContextClassLoader(saveLoader);
}We are not experts on classloaders and we don't have an example of doing this. We have not done it ourselves, we only know that users have done it.
I hope this helps.
Regards,
Alex Gorrod
Oracle Berkeley DB -
Compatibility issues between Berkeley DB Java Edition and Berkeley DB
We are trying to use both Berkeley DB Java Edition and Berkeley DB (Java/C) in one of our projects. However, they share the common classes (i.e. EntryDingin.java), but with their own different impementation. Is there any reason that they have to share the same names/packages? Can we request to have the shared java classes going into different packages?
Thanks
YaoHello Yao,
You're correct and the DB and JE products were not designed to run under the same classloader in the same JVM. It is very unlikely that we'll be changing the package names, since that would be very disruptive and yet have no value for the overwhelming majority of users. We will note your request, however, for future reference.
The two workarounds I know of are:
1. Use a separate classloader for the use of each product.
2. Use a tool such as jarjar links (http://code.google.com/p/jarjar/) to rename the packages in one or both of the products.
Option 2 is not something we (the JE team members) have experience with, but it was used successfully by a JE user. The user also pointed out a bug in the jarjar tool to be aware of: http://code.google.com/p/jarjar/issues/detail?id=21
--mark -
Using Oracle Berkeley DB Java Edition RELEASE 3.2
Hi,
I am completely new to Oracle. I intend to use Oracle Berkeley DB Java Edition RELEASE 3.2., in conjunction with Java.
Can some one help me figure out what documentation I should use, and the learning path ?
Any suggestions would be greatly appreciated.
Thanks
Ravi Banthia
KolkataPlease refer
http://www.oracle.com/technology/products/berkeley-db/je/index.html
Maybe you are looking for
-
I have had a problem with the compatibility of Firefox running with the games I play online. I don't want to attempt an upgrade again, only to have to turn around and degrade so my activities can work. Furthermore, I'm not sure where to save the Fire
-
Photoshop cs6 and 3d commands on a macbook pro
Hi everyone, sorry for my horrible english but i'm italian. So, i have installed the photoshop cs6 extended version on my macbook pro 2.26ghz Intel core 2 Duo, 4GB ram, but doesn't appear the 3D commands on it. What i wrong? Thank you for your reply!
-
N:1 Situtation Solutions.
Hi, All Here's the situation: Two indepentant interface from mainframe system to one single common idoc thru PI . Cannot tell which message arrive first. Only when two messages arrive in PI and the same common idoc were updated by both interface the
-
Best way to handle raiseerror after migration from SQL 2K?
Hi, Here a sample code : raise_application_error(-20999, 'message id: 50048'); /*[SPCONV-ERR(7)]:('Raiserror ( <message id>....) Manual conversion required*/ /* message id gives id in sqlserver syscomments table*/ RAISE_APPLICATION_ERROR(-20500,'Trig
-
Error when trying to access travel form
Hello, when im trying to access the travel form from pr05 or from the ESS i get the error "Error while initiating travel form". No further errors are given. Any ideas whats wrong? regards, Markus