About multi process access BDB question

I am designing one system using BDB.I have some questions about multi process access BDB.
1.If there are two process, they are shared BDB cache or every one has self BDB cache? (My understanding is every process has cache by itself.)
2.If one process write BDB and at the same time one process read BDB,how to make read processs can read data which write by write process just now?

1.If there are two process, they are shared BDB cache
or every one has self BDB cache? (My understanding
is every process has cache by itself.)You can configure it either way. The cache is maintained as part of the so-called environment. The usual thing is to configure a shared cache. You need to read about environments in the BDB and BDB/XML documentation.
http://www.oracle.com/technology/documentation/berkeley-db/xml/index.html
2.If one process write BDB and at the same time one
process read BDB,how to make read processs can read
data which write by write process just now?Use transactions, set up deadlock handling, and think about what transaction isolation guarantees you need. Note that there are four different fundamental setups for BDB: DS, CDS, TDS and HA, which stand for Data Store, Concurrent DS, Transactional DS and High Availability. For read-write concurrency, you need TDS.
http://www.oracle.com/technology/documentation/berkeley-db/xml/ref/intro/products.html
For high concurrency at the expense of memory, consider using multi-version concurrency control (MVCC). You can read about it in the following thread, especially in George Feinberg's replies:
Deadlock handling for beginners
In addition, there is ample documentation included in the BDB/XML distribution. It's pretty complex, as BDB can be configured in many different ways.
Michael Ludwig

Similar Messages

  • About multi process application.

    We are using BDB for one application.
    A.process: read-write data;
    B.process: read-only;
    A & B will share database;
    For this kind of case,
    1.how to set the env flag for A & B?
    2.how to set contaienr flag for A & B?
    3.how to set transaction flag for A & B?
    Thanks.

    As I had a similar problem with a multithreaded application recently I'll try to answer your questions.
    1.how to set the env flag for A & B?DB_INIT_MPOOL | DB_INIT_LOCK (| DB_THREAD)
    From what I understand you need to use DB_THREAD only if a process is multithreaded. If A & B are singlethreaded I think you don't need to use DB_THREAD.
    2.how to set contaienr flag for A & B?(DB_THREAD)
    Same as above (if you want to set DB_THREAD here you must have set DB_THREAD for the environment, too).
    3.how to set transaction flag for A & B?That I don't know as I don't use transactions.
    HTH,
    Boris

  • Multiple RO processes accessing replicated client?

    Hi. I have a question about using replication. (Under Linux if it makes any difference).
    Is it possible to have multiple processes sharing a set of replicated db files? I would only have one process updating the environment, and only to the extent of running the replication manager
    to get updates from the master; we would never have the clients write anything out. The other processes would only open the files read only. The docs are a bit unclear on the subject and as to whether this is a supported configuration.

    Hey Matthew,
    That configuration is supported. The only constraint on multi-process access relates to processing incoming messages (which the replication manager takes care of). As long as only one process calls DB_ENV->repmgr_start, other processes can open the environment for read-only access.
    Michael.
    P.S. For future reference, we've got a separate forum for Berkeley DB HA:
    Berkeley DB High Availability (Replication)

  • Question about signal processing

    hi
    at which location i should post the question about sigmal processing toolkit???
    plz inform me,,,,

    That sounds like a LabVIEW question to me.  This LabVIEW board seems appropriate.
    There are only two ways to tell somebody thanks: Kudos and Marked Solutions
    Unofficial Forum Rules and Guidelines

  • Configuring the DbEnv for multi-process single-writer scenario

    I have (1) a multi-process server program (Apache/PHP) using the XML container read-only and (2) a couple of scripts (Perl, PHP, whatever), one of which may be performing update work on the data at any given moment. There is, however, no concurrent write access.
    Write access, if I've understood correctly, commands the use of transactions in a multi-process scenario. Specifically, I'd use:
    * DB_INIT_MPOOL, DB_INIT_LOCK, DB_INIT_LOG and DB_INIT_TXN when creating the environment, so that all subsystems that will eventually be needed are in place;
    * DB_INIT_MPOOL, DB_INIT_LOCK, DB_INIT_LOG and DB_INIT_TXN for writing;
    * DB_INIT_MPOOL for reading.
    Please correct me if these assumptions are somehow flawed or simply wrong.
    Do I need more flags?
    Now, in the Berkeley DB Reference Guide, I read about Berkeley DB Concurrent Data Store Applications and the DB_INIT_CDB flag. I wonder if (a) this information also pertains to BDB XML and (b) this fits my scenario - only one write process at any given time.
    If I can use DB_INIT_CDB, what will I gain with respect to the scenario laid out above, or any other possible scenario?
    Michael Ludwig

    Hi John,
    thanks for pointing out that the flags used to open the environment have to be consistent among all applications.
    As for CDB:
    CDB puts a single big lock around the database, and
    won't let any readers get access to anything while a
    writer is operating. Generally it is advisable to use
    transactions in preference to CDB, which will allow
    concurrent reads and writes. You should also consider
    using MVCC, to increase concurrency more.Thanks for this info on MVCC. I remember reading an interview with the Interbase (then Groton Database) developer Jim Starkey, who seems to have invented MVCC, in which he told how, one morning in the shower, it appeared to him that multi-version concurrency control was the solution to almost all problems. Well, database problems, maybe.
    I read about MVCC in your Transaction Guide.
    http://www.oracle.com/technology/documentation/berkeley-db/xml/gsg_xml_txn/cxx/isolation.html#snapshot_isolation
    "What [MVCC] means is that every time
    a writer would take a read lock on a page,
    instead a copy of the page is made and
    the writer operates on that page copy.
    This frees other writers from blocking
    due to a read lock held on the page."
    I think an application featuring high concurrency of read and write operation will benefit from MVCC, provided there is enough memory to accomomate all the page copies. And I will eventually need this.
    At the moment, however, the update is done using the typical nightly crontabbed batch job. Not much traffic expected during the update, and no updates while the site is busy. I doubt I have much to gain from MVCC in this primitive scenario. What do you think? Would I still benefit from MVCC, or would I only incur the copy overhead without benefitting from it for lack of read-write concurrency?
    Michael

  • 802.1x per host authentication under one port with multi-host access by switch

    In the situation with multi-host access to one port of Cisco 2960 Lan Lite by another simple L2 switch, is it possible that we could control per user access by authentication for each?
    What happens if I connect to the switch (which already has some trusted devices) a untrusted device?
    What happens if I connect to the switch (which already has some untrusted device) a trusted device?
    If I use "authentication violation protect" traffic will be blocked only by an untrusted device or all devices connected via a simple L2 switch?
    I read the manual, but it is not made ​​detailed clarity.
    Please tell me the right way.
    I will be very grateful for your advice!

    Hello,
    In the situation with multi-host access to one port of Cisco 2960 Lan Lite by another simple L2 switch, is it possible that we could control per user access by authentication for each?
    Yes, that's why multi-host mode exists
    What happens if I connect to the switch (which already has some trusted devices) a untrusted device? If it's on single host the port will go into error-disabled as the violation of just one client per port has been triggered.
    What happens if I connect to the switch (which already has some untrusted device) a trusted device?Same thing than before if being on single mode.
    If I use "authentication violation protect" traffic will be blocked only by an untrusted device or all devices connected via a simple L2 switch?
    Only for the unknown client MAC address, the trusted devices will be able to comunicate.
    For more information about Core and Security Networking follow my website at http://laguiadelnetworking.
    Any question contact me at [email protected]
    Cheers,
    Julio Carvajal Segura

  • Multi channel access on SSO enviroment

    Hi,
    someone can tell me if OID and SSO Server can support multi channel access?
    I want that the users that comes from Internet must do a strong authentication (with Security Certified), but i want that intranet users can log with a light Authentication (only Username and password). It's possible

    Hi Andreas,
    in the document they speech about different application. But if the application is the same with a different reference for a different channel? Do you think that it work fine? If i assign to application A ip=x.x.x.x for intranet users and i define MediumSecurity_AuthPlugin and, for the same application A assign a virtual host ip=y.y.y.y for internet users i define HighSecurity_AuthPlugin.
    Another question, in the manual they refers to a partner application, Is it the same for External application?
    Thanks for you attention
    Regards
    Stefano

  • After effects multi processing issue

    hi i installed after effects cc2014 on the following machine:
    dell precision t7500
    dual zeon six core with hyperhreading
    36 gb ram
    ssd disks
    nvidia gtx590 gfx card
    ruing 3 dell 22 inch monitors
    on first install multi processing was fine was able to render multiple frames on multiple cpus ect,  i ended up having some heat issues with gfx card so removed it, and installed a nvidia fx 3700 card, after that after effects takes loads longer to load, and when i go to preferences multiprocessing it shows 0 cores used to render multi frames.
    i have set aside 2 cores for other apps, and each of them gets 1.5gb of ram, leaving:
    22 cores (with hyper threading) available to after effects and 33 gb of ram .
    i have tried many different configs but it will not use multi cpu. i switched off hyper threading, so there would be 12 actual cores set aside 2 for other apps and gave them 1.5 gb ram each to use so i should have had: 10 cores and 33gbs of ram left for after effects. i expected to be able to use 8 or 9 cores for multi cpu utilization, with at least a couple of gb for each. but still no multiprocessing available.
    do you think i will have to re install after effects? hope i dont as i have loads of plugins installed so dont realy want all the hassle, i had same problem in the past when i upgraded to the gtx590 card but i was doing a new windows install on new drives so was not much more of a hassle once new install was done multi processing worked ok again.
    any idea from othe who had same issues?
    thanks
    alun

    You shouldn't have to reinstall aftereffects, just delete your preferences and start from scratch. Multi processing is a very sensitive beast. Some footage, many codecs, and some of the effects do not play well with multi processing. If your projects contain any of these incompatible elements then multiprocessing will not work effectively.
    Without knowing anything at all about your compensation or the footage used or the codec you are rendering to it is impossible for us to give you suggested settings.

  • How to handle and manage a multi Database access in runtime with LCDS?

    Hello there
    I got several customer working with the same application and I wonder how,  with LCDS,  to manage  in a runtime a multi dataBase access; without creating a configuration "mxl" file in
    the folder catalina for each database.
    Indeed, each customer have their own dataBase, and so far, I did not find out how to avoid creating a config xml file in catalina for every single database; which force me to create as well for each customer a  folder application, since the name of the config file in catalina require a folder application to be ran under tomcat....
    Thus, my question is :
    Is there anyway to create only one configuration mxl file in catalina (in the server side) and then from the client side (application) let the user select its environment (meaning its database) to run the application.... this technic can be also used for multi database environment such as : Dev / Test / Prod   environment (or database) where the same application can access to.
    Please if any one have an idea or already delt with; just let me know, because I'm entering in a bootle neck and the situation is getting serioulsy critical....
    Regards

    Hello Ulrich,
    with compact and repair I mean the MSAccess function "Compact and Repair".
    Please follow the link below for more details:
    http://office.microsoft.com/en-us/access-help/compact-and-repair-an-access-file-HP005187449.aspx
    Normally you can execute this function directly in Access or with the Windows ODBC Data Sources Administrator  => "Control Panel" => "Administrative Tools" => "Data Sources (ODBC)"...
     I want to execute this function via cvi code and not by hand ;-).
    Thank you for your support.
    Frank

  • ESYU: R12 - Order Management를 위한 Multi Org Access Control(MOAC) setup 방법

    Purpose
    Oracle Order Management - Version: 12.0 to 12.0
    Information in this document applies to any platform.
    R12의 Order Management에 대핸 Multi Org Access Control(MOAC) setup 방법에 대해 알아본다.
    Solution
    일반적인 MOAC Setup:
    1. HRMS에서 Security Profile을 정의:
    a. HRMS Management responsibility 선택
    b. HRMS Manager> Security> Profile로 이동
    c. Security Profile이 정의되어 있는지 확인 (OM responsibility 혹은 Site level로)
    d. 만일 아직 setup 되어져 있지 않다면 Operating Units를 입력
    e. 저장
    Note: 만일 위 d step과 같이 새로운 security profile을 생성하였다면 concurrent program 'Security List Maintenance'를 꼭 실행해야 한다.
    그렇지 않으면 multiple operating units가 OM forms의 LOV에 나타나지 않을 것이다.
    이 program은 multi-org access를 validating 하기 위해 사용하는 table에 data를 생성한다.
    Navigation: HRMS Management> HRMS Manager> Processes & Reports> Submit Process & Report> Security List Maintenance
    2. MO Profile Options setup:
    a. MO: Security Profile - 이 profile setting은 MOAC functionality를 활성화 한다.
    b. MO: Default Operating Unit - 이 Operating Unit는 OM forms과 report에서 default가 될 것이며, 이를 clear 하거나 변경하기 위해 LOV를 사용할 수 있다.
    Keep the MO profiles in sync:
    MO: Security Profile은 site와 responsibility level로 setting 할 수 있다.
    MO: Default Operating Unit은 site, responsibility, user level로 setting 할 수 있다.
    Application이 원하는대로 동작되지 않는것을 발견하면 이 profile options의 setting 값을 확인한다.
    3. OM setup:
    R12 upgrade 시 OM Profile에서 migrate 된 새로운 OM System Parameters를 확인:
    Order Management Super User> Setup> System Parameters> Values
    (See <<NOTE 393646.1>>-R12 Readiness Cheat Sheet: Migrated OM Profile Options)
    4. Form에서 hidden field 'Operatin Unit'를 활성화시키고 default folder로 저장:
    Sales Order and Order Organizer forms
    Quick Sales order and Organizer forms
    Sales Agreement forms
    Pricing and Availability form
    Other forms
    Note: Sales Order form에서 hidden field 'Operating Unit'를 'Show' 하기 전에 fotm안에 이 field를 위한 공간을 만들어 놓아야 한다.
    예를 들면 Customer Number field를 짧게 하거나 Operating Unit field로 이 field를 덮어씌울수 있다.
    Reference
    Note 393634.1

    Hi Larry,
    Have you considered adding the exec apps.mo_global.set_policy_context call to your connection's start-up script?
    Tools -> Preferences -> Database -> Filename for connection startup scriptNot the most flexible approach, so I'm not sure if it is appropriate for your application, but just a thought. You might create distinct connection names with different start-up scripts for each org_id.
    Regards,
    Gary
    SQL Developer Team

  • How to handle and Manage Multi DataBase access with LCDS in runtime ?

    Hello there
    I got several customer working with the same application and I wonder how,  with LCDS,  to manage  in a runtime a multi dataBase access; without creating a configuration "mxl" file in
    the folder catalina for each database.
    Indeed, each customer have their own dataBase, and so far, I did not find out how to avoid creating a config xml file in catalina for every single database; which force me to create as well for each customer a  folder application, since the name of the config file in catalina require a folder application to be ran under tomcat....
    Thus, my question is :
    Is there anyway to create only one configuration mxl file in catalina (in the server side) and then from the client side (application) let the user select its environment (meaning its database) to run the application.... this technic can be also used for multi database environment such as : Dev / Test / Prod   environment (or database) where the same application can access to.
    Please if any one have an idea or already delt with; just let me know, because I'm entering in a bootle neck and the situation is getting serioulsy critical....
    Regards

    Hello Ulrich,
    with compact and repair I mean the MSAccess function "Compact and Repair".
    Please follow the link below for more details:
    http://office.microsoft.com/en-us/access-help/compact-and-repair-an-access-file-HP005187449.aspx
    Normally you can execute this function directly in Access or with the Windows ODBC Data Sources Administrator  => "Control Panel" => "Administrative Tools" => "Data Sources (ODBC)"...
     I want to execute this function via cvi code and not by hand ;-).
    Thank you for your support.
    Frank

  • 802.1x per host authentication under one port with multi-host access by hub

    Dear,
    While multi-host connect to one port by hub, it seems that in multi-host mode, after one host passed the authentication, the port change state to up, and the other hosts do not need to authenticate any more. And in single host mode, only one host could access to the network under one port.
    In the situation with multi-host access to one port by hub, is it possible that we could control per user access by authentication for each?
    We did some test on 3550, it seems that the 3550 doesnot support what we need. And what about 4506?
    Thanks!

    Multiauthentication Mode
    Available in Cisco IOS Release 12.2(33)SXI and later releases, multiauthentication (multiauth) mode allows one 802.1X/MAB client on the voice VLAN and multiple authenticated 802.1X/MAB/webauth clients on the data VLAN. When a hub or access point is connected to an 802.1X port (as shown in Figure 60-5), multiauth mode provides enhanced security over the multiple-hosts mode by requiring authentication of each connected client. For non-802.1X devices, MAB or web-based authentication can be used as the fallback method for individual host authentications, which allows different hosts to be authenticated through different methods on a single port.
    Multiauth also supports MDA functionality on the voice VLAN by assigning authenticated devices to either a data or voice VLAN depending on the data that the VSAs received from the authentication server.
    Release 12.2(33)SXJ and later releases support the assignment of a RADIUS server-supplied VLAN in multiauth mode, by using the existing commands and when these conditions occur:
    •The host is the first host authorized on the port, and the RADIUS server supplies VLAN information.
    •Subsequent hosts are authorized with a VLAN that matches the operational VLAN.
    •A host is authorized on the port with no VLAN assignment, and subsequent hosts either have no VLAN assignment, or their VLAN information matches the operational VLAN.
    •The first host authorized on the port has a group VLAN assignment, and subsequent hosts either have no VLAN assignment, or their group VLAN matches the group VLAN on the port. Subsequent hosts must use the same VLAN from the VLAN group as the first host. If a VLAN list is used, all hosts are subject to the conditions specified in the VLAN list.
    •After a VLAN is assigned to a host on the port, subsequent hosts must have matching VLAN information or be denied access to the port.
    •The behavior of the critical-auth VLAN is not changed for multiauth mode. When a host tries to authenticate and the server is not reachable, all authorized hosts are reinitialized in the configured VLAN.
    NOTE :
    •Only one voice VLAN is supported on a multiauth port.
    •You cannot configure a guest VLAN or an auth-fail VLAN in multiauth mode.
    for more information :
    http://www.cisco.com/en/US/docs/switches/lan/catalyst6500/ios/12.2SX/configuration/guide/dot1x.html

  • Multi-Process Engine Discussion Forums

    This is a discussion forum for the Multi-Process Engine (MPE) Reference Component and A Multi-Process Engine in LabVIEW.
    Note:  Both articles should be live by 1/13/09
    Brian K.

    Hello Gerardo,
    I was not aware that you work for NI. I have some important questions for you:
    Assume we use your trick and wrap a Timed Sequence around the outer Loops of State Diagram Toolkit generated code.
    Now the user code runs at a Priority above High Priority, but below Time Critical Priority. Right?
    Questions:
    1) Which, if any, System (RTOS) processes will Preempt User Code running at this Priority Level ?
    (Probably the Memory Manager / Garbage Collector, but we are not doing any operations which should make GC kick in)
    2) If the User Code still can be preempted by System Processes, what is timewise the upper bound (apart from GC) of these processes?
    i) The System Processes may run for a long time, so the Time Slice of 10 ms will be the upper bound ?
    ii) The time is much shorter, shorter than X ms, where X is ?
    Please, knowing this will give us more peace of mind !
    And, if you may, which processes may Preempt High Priority?
    We have run our endurance test now for 39 hours and it has performed 150.000 Relay Operations as described in the White Paper. It has met the expected Min / Max response time perfectly every time.
    It has 24 processes running at High Priority and one Communication Process using Shared variables running at Normal Priority. So the system seems to work, but we must know before deploying the system at the customer site!
    Geir Ove

  • Multi process of Firefox

    Hi,
    We are 3 using RDProtocol to a remote machine. I just installed Firefox and what a surprise when everyone want to use Firefox in the same time, a problem happens : Just one can use it, while the others get this message: "Firefox is already running....Close the process"
    Isn't Firefox multi-process ? We tried some other browsers and oddly the problems does NOT happen. For my mind I'd like to use Firefox mainly for HTML developing and firebug.
    Is here someone able to help me?
    Config: Windows 2003 server
    Firefox 13.0.1
    Thank in advance

    Does the error occur when everyone logs in as the same Windows user, or when they log in as separate Windows users, or both?
    To run isolated sessions of Firefox, you need to make a few configuration changes. Please see cor-el's solution in this thread: https://support.mozilla.org/en-US/questions/925594#answer-327043

  • Helps!:How to start multi process in a single java program?

    I wanna to test the querying performance of a Database
    connection poll,and here,not only multi threads,but also multi process I need to start in the same java program cause i have only one PC available.....
    Does that possible?

    In pure java this is not possible.
    A java program with all its thread run in a single
    jvm,
    which is just one process.However, you can have multiple instances of the jvm, I've done it w/ I needed to test some row locking in my database app. If you are in windows and want 3 copies of you program just make a bat file that looks likejavaw.exe -classpath "classesGoHere" MainClass
    javaw.exe -classpath "classesGoHere" MainClass
    javaw.exe -classpath "classesGoHere" MainClassThat will create 3 instances of the jvm and thus three instances of your application. I'm sure the same can be done on multiple platforms.
    Peter

Maybe you are looking for

  • Reinstalling Adobe Acrobat Professional on a new laptop

    Can I uninstall Acrobat Professional X from my old laptop and reinstall on my new machine and what is the correct procedure for doing so?

  • Making Games in Java!!!

    hey i want to make a game in java but i want to get a lot more ideas about what the game should be like and what it should do. I want to actually work with someone else to make the game and then we can sell it or something like that. So if anyone is

  • Layer thumbnails in Layers palette empty

    One of our users sometimes can't see the contents of the thumbnails for each layer in the layer palette. Looks like this: Any ideas on why and how to fix it? User is on Mac Pro (Mid 2010) with 16 GB RAM, Mac OS X 10.6.8, Photoshop 12.0.4.

  • Can A DVD Burner Connected By USB 2.0 Install Leopard/SL ?

    I am contemplating getting an external DVD drive to relieve the workload on my internal one. I would also like it to be capable of working with an installation DVD in the event of my computer's DVD burner failing when I wanted to upgrade the OS in th

  • Another "Moving my itunes music" question...

    I too have recently purchased a new computer and have already move my itunes music folder via "target disk mode" from my G4 to my Dual Core. (Both systems operate itunes7) I have also exported my playlist and library files from the G4 and have the mu