MultiThreaded compare and swap question.

I'v got this assignment and I'm not sure which approach to take. I think I've got it right with my second try, but I was wondering if I could get some sort of verification or something.
"Use Java monitors to implement the atomic Compare-And-Swap instruction, which has the following effect: CSW(a,b,c): < if (a==c) { c = b; return(0);} else {a = c; return 1;} > (In most concurrency books and papers instructions within angle brackets < > means that everything within the brackets is done in one uninterruptible, atomic action.) "
Is this right?
public synchronized int compareAndSwap(Object a, Object b, Object c)
        if ( a.equals( c ) )
            c = b;
            return 0;
        a = c;
        return 1;
    }Or is this?
public int compareAndSwap(Object a, Object b, Object c)
        synchronized ( a )
            synchronized ( b )
                synchronized ( c )
                    if ( a.equals( c ) )
                        c = b;
                        return 0;
                    a = c;
                    return 1;
    }Or am I totally off base? I think the latter is right as it prevents the objects themselves from being messed with.

As far as making it an atomic action, you do that
with synchronized, BUT more detail might be needed
about the context in which it's supposed to be atomic
to know what to sync on.OK, thanks. I was thinking I was crazy or something, but his question is just unclear. I have no idea what he wants and I'm not sure he does either.
Thanks.

Similar Messages

  • Problems analizing compares and swaps in my algorithims

    What I need to do is analize my sorting algorthims, in terms of the number of compares and swaps. I have about 6 different sorts in one class, a couple of them came from help by, other posters, on this board. And I have a simple file reader in another class that reads a txt file, sorts, then prints, but also prints the numbers of compares, swaps, using varibles from my sorting class.
    The txt file has 64 strings(names of people). Some of the sort I get what seems to me correct, or least close to correct results, but for a couple I"m getting downright strange results. I'm trying to figure out where to put the counting variables so I can get decent results.
    In my quicksort, the results I'm getting is 1 compares 1 swaps, now obviously that's wrong but I'm trying to figure out where to put, the variables to get the correct results.
         public static void quicksort(List data, int first, int last){
                           int lower = first + 1, upper = last;
                           swap(data,first,(first+last)/2);
                           Comparable Bound = (Comparable)data.get(first);
                           while (lower <= upper){
                                while ((((Comparable)data.get(lower)).compareTo(Bound)) < 0)
                                          lower++;
                                while (Bound.compareTo(data.get(upper)) < 0)
                                     upper--;
                                if (lower < upper)
                                     swap(data,lower++,upper--);
                                else lower++;
                           swap(data,upper,first);
                           if (first < upper-1)
                                quicksort(data,first,upper-1);
                           if (upper+1 < last)
                                quicksort(data,upper+1,last);
          public static void quicksort(List data){
                           if (data.size() < 2)
                                return;
                           int max = 0;
                           //find largest data and put at end of data
                           for (int i = 1; i < data.size(); i ++)
                                if (((((Comparable) 
                           data.get(max)).compareTo(data.get(i))) < 0))
                                     max = i;
                           compares++;       // <----------------------- COMPARE
                           swap(data,data.size()-1,max);
                           swaps++;                 //    <--------------------------   SWAP
                           quicksort(data,0,data.size()-2);
    }      The selection sort results give me exactly the same for both compares, and swaps 2016.
    public static void selectionSort (List data)
               int i,j, least;
               final int size = data.size();
               for (i = 0; i < size - 1; i++)
                  for (j = i+1, least = i; j < size; j++)
                       compares++;             //   <-------------------- COMPARE
                 if (((((Comparable) (data.get(j))).compareTo(data.get(least)))) < 0)
                      least = j;
                      swap(data,least,i);
                      swaps++;                         //   <------------------------ SWAP
            Thanks for your help.

    jkc532 wrote:
    .. Is the fact that the CachedJarFile class doesn't attempt to reload the resource when it can't retrieve it from MemoryCache a bug? From your comprehensive investigation and report, it seems so to me.
    ..I've dug as deep as I can on this and I'm at wits end, does anybody have any ideas?Just after read the summary I was tired, so I have some understanding of the effort you have already invested in this (the 'wits' you have already spent). I think you should raise a bug report and seek Oracle's response.

  • How to use Compare and Swap (CAS) atomic function(Solaris specific) in C

    Hi,
    I have found cas32() atomic function in (solaris 10) </usr/include/sys/atomic.h> (and also there is another atomic.h header file in </usr/include/atomic.h> but this header file does not have any cas32() function declarations) the declaration of cas32 in <sys/atomic.h>
    is as follows
    extern uint32_t cas32(uint32_t *target, uint32_t cmp, uint32_t newval);
    extern ulong_t caslong(ulong_t *target, ulong_t cmp, ulong_t newval);
    extern uint64_t cas64(uint64_t *target, uint64_t cmp, uint64_t newval);
    extern void casptr(void target, void cmp, void newval);
    extern uint8_t cas8(uint8_t *target, uint8_t cmp, uint8_t newval);
    But the problem is when iam using these functions in c programs and compiling
    using gcc it is showing the following error.
    Undefined first referenced
    symbol in file
    cas32 /var/tmp//ccQcsnev.o
    And if i use the function other than cas32 group of instruction
    such as atomic_or_uint()
    whose declaration is extern void atomic_or_uint(uint_t *target, uint_t bits);
    in <sys/atomic.h> it is giving no error where as for CAS32 it showing as undefined symbol.Why it is giving like that we are not able to know.Is it the case that CAS32 instruction only available in Kernel mode and not available to user mode.Please inform us if anyone knows how to use cas32() instruction in the user C programs.As this is usefull for writing Nonblocking versions of stacks and Queues.Is there any way to write
    our own atomic functions?
    Rama

    You are trying to use the old kernel-only CAS functions, use the correct ones like:
    atomic_cas_32.
    DS

  • Dual booting Arch and Vista w/ recovery partition and a swap question.

    I have a bit of a problem. The problem is, on a machine, you can only have 4 primary partitions. sda1 and sda2 are my Vista and Recovery partitions respectively, which eliminates two of my primary partitions already. I myself have never used logical partitions, and was wondering if any of the partitions the Beginner's Guide recommends (/, swap, /var, and /home) could be made logical, and if I even need a swap partition. Thanks in advance for your replies and suggestions.

    The /boot/ directory needs to reside in a primary partition. Everything else can be in a logical partition.
    Then again all you really need is / and swap.

  • ADMs, SSD and Noise questions

    Hi,
    Does anyone here have a current generation xserve that they could vouch for in terms of noise compared to a mac pro?
    I've got two 1TB drives (enterprise drives, SATA) right now and I'd love to just throw them in the xserve, is that possible or do I need sleds from apple?
    SSD, can it be added later by apple or IT staff, or does it have to be ordered with the machine (built in?)
    Thanks

    Here's the Xserve versus Mac Pro acoustical output (decibel, dB) discussion mentioned: [messageID=9292211|http://discussions.apple.com/thread.jspa?messageID=9292211]
    As for your question on drive compatibility and swaps, that's been the subject of a number of discussions around disks and sleds and drive compatibility; dig around a little. A particular storage widget might work flawlessly, it might mostly work just fine, it might be a little flaky, or it might not work at all. Most drive swaps "mostly work" or better, but I've seen both extremes of that range. Check the other discussions.
    No one can predict the compatibility of a third-party drive. Usual or normal or likely, yes. But whether it works or not takes testing. And most third-party drives won't match up with SMART reporting for errors and such; that area tends to be very vendor-specific.
    As for your SSD question, the Xserve disk drives (and ignoring third-party compatibility discussions here) are usually a trivially easy swap. If you'd like to know if Apple has those now available aftermarket and specifically with end-user installation, ask Apple.
    There's some value in the extra cost of the vendor drives; you're paying the vendor to perform the compatibility testing and support. Or you get to pay that cost for your own integration and testing, if you follow that path.

  • Satellite S50T-B - Adding RAM and swapping HDD for SSD

    HI there,
    I have recently purchased the Satelitte S50t-B laptop and have a few question about upgrading:
    1. What is the recommended RAM to add (8GB)
    2. What is the recommended SSD to add?
    3. Are there any instructions to add RAM and an SSD to my laptop?
    4. Will I void my warranty by installing more RAM and swapping the current hard drive for an SSD?
    Thank you for your help

    This notebook is listed on Toshiba page:
    http://www.mytoshiba.com.au/products/computers/satellite/s50/pspq8a-008008/specifications
    - What is the recommended RAM to add (8GB)
    The unit supports 16GB RAM, so you can add an second PC3-12800 8GB DDR3L (1600Mhz) SO-DIMM module (i.e PA5104U-1M8G)
    - 2. What is the recommended SSD to add?
    Its up to you there are different SSD drive on the market and most of the 2.5 SATA SSD drives should be compatible.
    - 3. Are there any instructions to add RAM and an SSD to my laptop?
    It looks like both parts (RAM as well as SSD/HDD) are not user upgradable since there is no separate access to the memory or HDD bay. This means that whole plastic cover at the bottom of the unit needs to be remove in order to get access to these part.
    But as far as I know this would cancel the device warranty!!!
    - 4. Will I void my warranty by installing more RAM and swapping the current hard drive for an SSD?
    If you want to keep the warranty valid, such upgrade should be performed by authorized engineer.

  • Date fields and compare and get the later date of the fields

    I am trying to compare these date fields and compare and get the later date of the fields
    Tables are
    TABCASER
    TABCASER1
    EVCASERS
    Field
    Are
    TABCASER1.CASER_no
    The dates are to be compared and then get the records with the highest or latest date value.
    TABCASER1.CASERRECIEVEDDATE
    EVCASERS.FINALEVDATES
    EVCASERS.PUBLICATIONDATE
    EVCASERS.PUBLICATIONDATE
    TABCASER.COMPAREACCEPDATE
    I have this code but I am trying to figure out what it all means.
    I have several questions.
    1.
    1.     greatest it is used here to compare right? How do I then output this ? do I store it to a var (coldfusion) ultimately , I wish to send it to a page of records
    2.     is it necessary to use todate? And to_date? What does this do?
    3.     decode, is this necessary too. What does this do? NULL?
    4.     
    5.     
    6.     when I do get the query results how do I send it to coldsuion and out put to a display.
    Someone sent me this code.
    is there abetter way of doing this? To compare the dates and store in a var to display. thanks
    Here is my code below:
    Greatest(
         CASE
              WHEN INSTR(TABCASER1.CASER_no,'-CE') > 0 THEN
         decode(TABCASER1.CASERRECIEVEDDATE,NULL,TO_DATE('01/01/1900','mm/dd/yyyy'),TABCASER1.CASERRECIEVEDDATE)
                             WHEN INSTR(TABCASER1.CASER_no,'-ERNIE') > 0 THEN
         decode(EVCASERS.FINALEVDATES,NULL,TO_DATE('01/01/1900','mm/dd/yyyy'),EVCASERS.FINALEVDATES)
                             WHEN INSTR(TABCASER1.CASER_no,'-MONIE') > 0 THEN
         decode(EVCASERS.PUBLICATIONDATE,NULL,TO_DATE('01/01/1900','mm/dd/yyyy'),EVCASERS.PUBLICATIONDATE)
                             WHEN INSTR(TABCASER1.CASER_no,'-NADINE') > 0 THEN
         decode(EVCASERS.PUBLICATIONDATE,NULL,TO_DATE('01/01/1900','mm/dd/yyyy'),EVCASERS.PUBLICATIONDATE)
                             ELSE
         decode(TABCASER.COMPAREACCEPDATE,NULL,TO_DATE('01/01/1900','mm/dd/yyyy'),TABCASER.COMPAREACCEPDATE)
                        END
              ,decode(TABCASER.COMPAREACCEPDATE,NULL,TO_DATE('01/01/1900','mm/dd/yyyy'),TABCASER.COMPAREACCEPDATE))
              between TO_DATE('#dateformat(form.startDate,"mm/dd/yyyy")#','MM/DD/YYYY') and TO_DATE('#dateformat(form.endDate,"mm/dd/yyyy")#','MM/DD/YYYY')
    is there abetter way of doing this? To compare the dates and store in a var to display. thanks

    Hi
    If you have date datatypes than:
    select
    greatest(TABCASER1.CASERRECIEVEDDATE, EVCASERS.FINALEVDATES, EVCASERS.PUBLICATIONDATE, EVCASERS.PUBLICATIONDATE, TABCASER.COMPAREACCEPDATE)
    from TABCASER, TABCASER1, EVCASERS
    where ...-- join and other conditions
    1. greatest is good enough
    2. to_date creates date dataype from string with the format of format string ('mm/dd/yyyy')
    3. decode(a, b, c, d) is a function: if a = b than return c else d. NULL means that there is no data in the cell of the table.
    6. to format the date for display use to_char function with format modell as in the to_date function.
    Ott Karesz
    http://www.trendo-kft.hu

  • My screen turns gray with a blinking folder and a question mark

    My computer started going really slow so I tried to restart it. When it started to turn back on the screen just went gray for a minute or two then a darker gray folder with a question mark on it started blinking in the middle of the computer. little help?

    Hi,
    Before you buy a new hard drive, you may be able to get it fixed free of charge.
    MacBooks equipped with Seagate hard drives model ST96812AS (and possibly other Seagate models)
    with firmware 7.01 have experienced a higher than normal failure rates. The failure mode is that the heads detach from the positioning mechanism.
    You can use System Profiler to see what type of hard drive is installed. If you have gotten the screen with the folder and blinking question mark, and you do have a Seagate ST96812AS installed, I recommend calling AppleCare or taking your Macbook to a retail service center. There is a good chance you may be able to get the drive replaced, even if your MacBook is no longer covered by a warranty.
    The hard drive is considered to be a user serviceable part, so you might not have to send the entire computer in, but rather swap only the hard drive via mail.
    Best wishes for a problem resolution,
    Bill

  • Comparing and Combining 2 Excel Sheets

    Hi there,
    I have Microsoft Office 2008 (also Office 2007 on Windows - Using Parallel). Is there a software out there for Mac or PC where I can compare and combine two excel sheets? Each excel sheet has at least 12,000 rows. One column on each spreadsheet has a unique header.
    Anything that would be compatible with Leopard or XP that anyone would recommend.
    Thanks!
    Gilbert

    Apple Discussions doesn't have support for third-party products. Excel is a Microsoft product. You would be better off posting this question in the Excel for Mac forums at Microsoft. You can find them via Mactopia.

  • [Solved] Swap Question

    I'm not really a n00bie, but no expert, either, and these are probably 'n00bie' Q's.
    Hardware: Asus A8V-MX mobo, Athlon64 XP 3500+, .5GB DDR 333, 250 GB WD Cavier (IDE), homebuilt.
    I realise I really need  1GB (at least) of real memory for the environment I run, but money is tight, and my mobo only has 2 DDR slots, so I'd have to buy a full 1 (or 2) GB and put my current memory in the closet.
    Arch (Don't Panic) is fully current (x86_64).
    I have 2 (relevant) partitions: /boot (40MB), and LVM  (16GB). both at the front of the drive.
    LVM: / (3.5GB, 78% in use); /home (.75GB; 36%), and swap.
    This build is about 2 months old. I boot to run level 3, and manually initiate X/KDE as needed, but I'm normally on the net; typically I'll have Thunderbird, a console session, and Firefox running most of the time. I'm bad about having a dozen (or more) Firefox tabs open (10 at the moment).
    I frequent DailyKos.com. DKos runs AJAX-enhanced Scoop, which either trashes Konqueror, or Konqueror trashes it - it doesn't crash, but rendering in that environment simply does not work - open a page at that site with 200+ comments attached. If Konqueror rendered large DKos pages properly, I'd be using it.
    DKos tends to have LARGE pages. I also have a large Yahoo 'home page' with 54 categories; I try not to leave Yahoo windows open, although the home page itself is almost always open. The nature of DailyKos is such that a lot of consecutive pages will be open, and left open, often for hours, constantly being updated by AJAX.
    I initially allocated .5GB to swap. System ran OK, but bogged down especially bad when I opened a lot of browser tabs. In that environment (according to free, watching the 'buffers/cache used' item, and the 'swap used' item), both real memory and swap would 'typically' be roughly 50% in use,
    I decided a few days ago to increase swap by 50% (to .75GB) to see the results. The system is running considerably smoother; it still gets bogged sometimes, but I realise with the hardware I'm running I can't expect miracles. Even with 3 or 4 DKos windows open, it's still quite quick.
    Increasing swap had what hit me as an odd effect. Again, I have 10 windows open (no DKos ATM, but the effect is normally the same with them, also). free shows about 60% of real memory in use, but only 5MB of swap is in use. Given equivalent environments, I would have expected swap usage to go UP if there was more available. It appears that real memory has gone up, slightly (~50% to ~60%), while swap usage has gone WAY done (~50% to < 5%; < 1% this moment).
    I'm an OLD ex-COBOL    programmer; I've done a few moderate-size (but not commercial, production-scale) projects in VB (pre-Linux) and understand the basics of OOPS, but I'm not a C/C++ programmer at all, and reading the source isn't terribly helpful. Why did swap usage decline so drastically? I'm certainly not complaining      - I'm simply confused,
    Does the kernel decide on a memory management scheme at boot, based on available real memory and swapspace? Why did increasing swap DECREASE swap usage, INCREASE (more subtly) real memory usage, resulting in better performance? Given the environment I'm running, is .75GB a rational/adequate swapspace size? Any suggestions on an optimal swap size? I realise I can experiment myself; I already have a bit, obviously, and and willing to do more experimenting (and will), but some direction as to what's happening behind the scenes would be helpful.
    Lastly, is 'free' (properly read) the most appropriate tool for monitoring this, or should I be looking at iostat, vmstat, something in /proc?
    TIA!
    Keith
    Last edited by grndrush (2008-02-22 19:07:38)

    I don't know the answer to all of your questions but I beleive this is how swap works, In order for the kernel to free up space on your Memory(ram), the kernel transfers data that is not currently being used to the Swap partition and when the data is needed again the kernel copies it back to your actual Memory. So Swap is only used when an application is in idle and no longer needs it's data to be directly in memory, then when that application is in use again the data is copied back to the Memory. The reason I beleive your swap usage is going down is because you're increasing the size, therefor the ratio's are not what they once were, you're still probably using the same amount of swap but since the size of the swap has been increased it doesn't seem like it. In a general rule a swap partition or swap file should be twice the size of the amount of actual memory you have, increasing your swap more than that really isn't going to make a change to how fast your system is since swap is only used when an application no longer needs it's data to be in ram because it's idle, so it's copied to swap until it's needed again. Hopefully this answers some of your questions, and for your last question I beleive it's a matter of opinion, each of those tools work equally well, I use 'top' myself.
    Last edited by twiistedkaos (2008-02-12 19:49:36)

  • Compare and adjust functionality for Solution Directory

    Hello all,
    I am trying to use the Compare and Adjust function with a Solution Directory. There is a previous discussion about how to do this between a Master Template and Implementation Project. Now that the Solution Directory exists, I would like to do the same thing. I.e. take scenarios from the Solution Directory into individual projects to extend them before putting them back into production. Together with the check in/out function, I would like to use the Compare and Adjust (SA_PROJECT_UPGRADE) function to identify differences periodically. The button for this appears in the transaction SOLMAN_DIRECTORY, but I can't seem to activate it - i.e. it is faded out. For projects, you must first run SA_PROJECT_UPGRADE to activate this button. However, you cannot select a Solution when running the project upgrade transaction. Does anyone know how to do this? Is anyone using the Solution Directory in a similar way and have advice?
    Regards,
    Marcel

    Hi Marcel,
    Funnily enough I have the exact same question.
    Is there a way to compare changes between a maintenance project (business scenarios checked out this project) and the solution. This way the person approving the check in can see the changes before approving.
    Have you had further information on this?
    Referring back to your question, ideally once you've checked out a business scenario to a maintenance project you wouldn't continue to maintain it. It is the responsibility of that project to maintain it. In the meanwhile if you have a support issue that requires that business scenario to be updated, this will have to assessed and handled by either the project or the solution administrators.
    Cheers
    Ganesh

  • Comparable and comparator interface in java

    Hi All,
    How comparable and comparator interface works in java and when to use comparable and when to use comparator.please give me some example(code) as I am not able to understand the difference.
    Thanks
    Sumit
    Edited by: sumit7nov on May 17, 2009 4:45 AM

    Thanks,one more doubt.
    We have Collections.sort() method and we can sort any list by this method without implementing comparable or comparator interface.Then my question is when we need to implement comparable or comparator interface or when do we write our own compareTo() or compare() methods.
    Thanks
    Sumit

  • Automate Compare and Adjust functionality

    Hello Experts,
    I would like to know if there is an easy way to automate the entire process of "compare and adjust" in template management. I mean not only the transaction SA_PROJECT_UPGRADE execution but also all the adjustments in the roll-out projects (yellow flags): I do not want to click on every process / tab where the yellow flag appears and click on the button "compare and adjust", but click just once and my roll-out project is updated...
    Thanks a lot !
    Victoria

    Hello VIctoria,
    You are not the first one to ask this question.
    Please have a look at this link. The last comment is from Andreas Diebold and he is a developer with SAP, so he is authoratative in this regards.
    Accept all changes after SA_PROJECT_UPGRADE
    To summarize: there is no way to do this presently.
    Hope this puts this issue to rest for the time being.
    Regards,
    Paul

  • PMP 4000 calcualtes Spot/Spot and SWAP/SWAP Difference while

    Hi,
    My client is using Position Management Procedure 4000 for our Forex Forward
    transactions (Product type 60A and Transaction type 102).
    When we do key date valuation using TPM1 it calculates two different
    valautions - one for Spot gain/loss and another for Swap gain/loss as
    shown in the enclosed screen shot.
    We want a single gain/loss amount to be posted to the unrealized
    gain/loss account.
    What do we do?
    Kalyan

    Hi,
    In the IMG activity, Transaction manager --  Accounting -- Key date Valuation -- Assign Update Types
    define only the required update types for PMP 4000.   Also, in your PMP, I think you are using rate valuation for forward exchange transaction step. 
    Anyway, in the case of forward exchange transactions, I think it is correct to post both the losses because the rate of the transaction is made up of spot and swap rate.
    If you want to use a single account, then specify the same posting specifications for both the update types.  It will post to the same G/L accounts.  Please attach the screen shots..
    Check this case also: In settings for position management  --  Key date Valuation -- Price Valuation procedure for forward exchange transactions.
    Here in your procedure do not use Market Forward Rate for forward rate in transaction.  Only this component uses swap rate.
    Use Market spot rate for forward rate.  This will compare only with market spot rate on valuation date and post only 1 loss. 
    Regards,
    Ravi
    Edited by: Ravishankar Ramamurthy on Aug 3, 2009 10:09 AM

  • I'm looking to buy a new Macbook Pro, and have questions about the Applecare extended warranty?

    I'm looking to buy a new Macbook Pro, and have questions about the Applecare extended warranty? I want to know if the 3 year extended warranty covers what damage. Like water damage, accidental damage, lost or stolen macbook, manufactory defects, or any other kind of damage, maybe be even cosmetic damage. Can anyone help me?

    If you are talking about features of the MBP itself, as long as you are not looking at  the Retina models, then the memory you can upgrade yourself for a lot less than Apple charges, and that does not affect the warranty as Apple considers memory a user permitted upgrade.  Great sources are Crucial and OWC, both are Mac specialists and have on-line videos on how to do the install.
    If the 15" is what you are looking at, a good upgrade is the 7200 rpm hard drive, gives a little better performance over the standard 5400 rpm drive.
    The Hi Res screen is good if you do a lot of graphics work.
    Comparing the 13" amd 15" you will notice the 15" has a second, discrete graphic processor...helps when you get into heavy duty videos, games, graphics...but keep in mind that kicking in the second processor uses a lot of power and will run the battery down faster.
    If you are looking at the Retina models, then keep in mind there are no post-purchase upgrade options...you have to buy with everything you want at the start.
    Just some thoughts.

Maybe you are looking for

  • Strange issues in WebI report on standard Universe on top of BW Query

    Hello, We have a BW query with a standard Universe on top of it (generated automatically via the connection in universe designer). However, very strange things happen when playing with the data in WebI. There are some characteristics and just one key

  • [repo_proxy 13] SessionFacade::openSessionLogon with user info has failed(Transport error: Communication failure.

    Post Author: LeeCUK CA Forum: Authentication I have installed Enterprise XIR2 onto a Windows 2003 server and all services are running.I have installed the client on another windows 2003 server and I can connect to the console via the web. Firstly des

  • Time First-In-Last-Out

    We are running time evaluation with time clock. Is that a config to instruct the system to take the first in and last out to calculate the total hour and ignore the time employee went out for lunch? Please advice. Thank you.

  • I have a bothering sms problem with my curve..

    model curve 9360 os bb 7 when i read messages and decided not to make any reply my phone sending a message to that person saying "i'll get back to you soon" without my knowledge and i would only know it if the person asked why i texted that its bothe

  • Hierarchies in BPC

    Hey, i have a question about Hierarchies in BPC. How deep can these hierachies be? Is there a limitation? Because i get failure while importing data with my hierachie wich look like this: ID PARENTH1 All Invest     All Depot     Invest VV     Depot I