Dtrace user level tracing problem

Hi,
I am trying to trace user level functions using dtrace , Here is my dtrace script
#!/usr/sbin/dtrace -s
pid$1:calls:$2:entry
self->trace = 1;
pid$1:calls:$2:return
/self->trace/
self->trace = 0;
pid$1:calls::entry,
pid$1:calls::return
/self->trace/
When I run the following command
dtrace -F -s tracecalls.d 4968 f1
It does not find the function f1
Has anyone tried to use dtrace to debug user level functions on Intel x86 solaris version.
Thanks in advance.
Srikant

Hello Srikant,
You should the mangled name of your function "f1" in the binary. The same name should be given as input to your dtrace program.
Like for example :
nm a.out | grep f1
[137] | 82512| 20|FUNC |GLOB |0 |9 |_Z2f1vuse : dtrace -F -s tracecalls.d 4968 _Z2f1v
-Ajoy

Similar Messages

  • Common problems on User Level for SAP Support

    We are working on an RFP for SAP support. The client is having an existing helpdesk where key users or super users try to resolve the issues. If the same are not resolved at this level, these issues are escalated to Level-2 ‘Q’ which is specific to the SAP functionality and / or component. For identifying the correct functionality and / or SAP component, scripts are to be used so that the issue gets escalated to the right ‘Q’.
    We are looking for a list of common problems that occur at the User level so that the same may be translated into a hierarchical model for logging on the user requests to the relevant support ‘Q’. Anybody having worked on a similar proposal or having any insight on the subject, may please contact me.

    Hi,
    It sounds like you hit the wrong forum?!
    This is the Forum for questions around the SAP Business One SDK!
    Please give it one more try to find the right one!
    Thanks & sorry,
    Frank

  • IOCTL from user level program do not reach module

    Hello,
    I am facing with a weired problem. The user level ioctl on my device file does not reach the ioctl handler in my module at all. I have a simple character device driver called dummy (just pulled from a device driver manual 'hello world' example).
    [root@/]modinfo | grep dummy
    227 fa2f9a20 634 220 1 dummy (dummy driver)
    [root@/]ls -l /devices/pseudo/dummy\@0\:0
    c-wxrw--wx 1 root sys 220, 0 Dec 3 15:13 /devices/pseudo/dummy@0:0
    The open on the device file works well. But when I call ioctl, the message in the ioctl handler does not print. Niether does the ioctl call appear in the DTrace probes. perror from user program returns :
    : Invalid argument
    Let me know of any probable cause of ioctls not getting executed.
    Thanks in advance
    ->Shreyas
    My driver code is as follows :
        * Minimalist pseudo-device.
        * Writes a message whenever a routine is entered.
        * Build the driver:
        *         cc -D_KERNEL -c dummy.c
        *         ld -r -o dummy dummy.o
        * Copy the driver and the configuration file to /usr/kernel/drv:
        *         cp dummy.conf /usr/kernel/drv
        *         cp dummy /tmp
        *         ln -s /tmp/dummy /usr/kernel/drv/dummy
        * Add the driver:
        *         add_drv dummy
        * Test (1) read from driver (2) write to driver:
        *         cat /devices/pseudo/dummy@*
                  echo hello > ‘ls /devices/pseudo/dummy@*‘
        * Verify the tests in another window:
        *         tail -f /var/adm/messages
        * Remove the driver:
        *         rem_drv dummy
    #define SOLARIS
    #include <sys/devops.h> /* used by dev_ops */
    #include <sys/conf.h>               /* used by dev_ops and cb_ops */
    #include <sys/modctl.h> /* used by modlinkage, modldrv, _init, _info, */
                                           /* and _fini */
    #include <sys/types.h> /* used by open, close, read, write, prop_op, */
                                           /* and ddi_prop_op */
    #include <sys/file.h>               /* used by open, close */
    #include <sys/errno.h> /* used by open, close, read, write */
    #include    <sys/open.h>         /* used by open, close, read, write */
    #include    <sys/cred.h>         /* used by open, close, read */
    #include    <sys/uio.h>          /* used by read */
    #include    <sys/stat.h>         /* defines S_IFCHR used by ddi_create_minor_node */
    #include    <sys/cmn_err.h>      /* used by all entry points for this driver */
    #include    <sys/ddi.h>          /* used by all entry points for this driver */
                                     /* also used by cb_ops, ddi_get_instance, and */
                                     /* ddi_prop_op */
    #include <sys/sunddi.h> /*          used by all entry points for this driver */
                                     /* also used by cb_ops, ddi_create_minor_node, */
                                     /* ddi_get_instance, and ddi_prop_op */
    #include "vmci_defs.h"
    #include "vmciDatagram.h"
    char _depends_on[]="vmci";
    static int dummy_attach(dev_info_t *dip, ddi_attach_cmd_t cmd);
    static int dummy_detach(dev_info_t *dip, ddi_detach_cmd_t cmd);
    static int dummy_getinfo(dev_info_t *dip, ddi_info_cmd_t cmd, void *arg,
         void **resultp);
    static int dummy_prop_op(dev_t dev, dev_info_t *dip, ddi_prop_op_t prop_op,
         int flags, char *name, caddr_t valuep, int *lengthp);
    static int dummy_open(dev_t *devp, int flag, int otyp, cred_t *cred);
    static int dummy_close(dev_t dev, int flag, int otyp, cred_t *cred);
    static int dummy_read(dev_t dev, struct uio *uiop, cred_t *credp);
    static int dummy_write(dev_t dev, struct uio *uiop, cred_t *credp);
    static int dummy_ioctl(dev_t dev, int cmd, intptr_t arg, int mode,
                          cred_t *credp, int *rval);
    static int dummy_poll(dev_t dev, short events, int anyyet,
                          short *reventsp, struct pollhead **phpp);
    /* cb_ops structure */
    static struct cb_ops dummy_cb_ops = {
         dummy_open,
         dummy_close,
         nodev,                     /* no strategy - nodev returns ENXIO */
         nodev,                     /* no print */
         nodev,                     /* no dump */
         dummy_read,
         dummy_write,
         dummy_ioctl,
         nodev,                     /* no devmap */
         nodev,                     /* no mmap */
         nodev,                     /* no segmap */
         dummy_poll,                /* returns ENXIO for non-pollable devices */
         dummy_prop_op,
         NULL,                      /* streamtab struct; if not NULL, all above */
                                    /* fields are ignored */
         D_NEW | D_MP,              /* compatibility flags: see conf.h */
         CB_REV,                    /* cb_ops revision number */
         nodev,                     /* no aread */
         nodev                      /* no awrite */
    /* dev_ops structure */
    static struct dev_ops dummy_dev_ops = {
         DEVO_REV,
         0,                            /* reference count */
         ddi_no_info,
         //dummy_getinfo,
         nulldev,                      /* no identify - nulldev returns 0 */
         nulldev,                      /* no probe */
         dummy_attach,
         dummy_detach,
         nodev,                        /* no reset - nodev returns ENXIO */
         &dummy_cb_ops,
         (struct bus_ops *)NULL,
         NULL                         /* no power */
    /* modldrv structure */
    static struct modldrv md = {
         &mod_driverops,               /* Type of module. This is a driver. */
         "dummy driver",              /* Name of the module. */
         &dummy_dev_ops
    /* modlinkage structure */
    static struct modlinkage ml = {
         MODREV_1,
         &md,
         NULL
    /* dev_info structure */
    dev_info_t *dummy_dip; /* keep track of one instance */
    /* Loadable module configuration entry points */
    int
    _init(void)
         cmn_err(CE_NOTE, "Inside _init");
         return(mod_install(&ml));
    int
    _info(struct modinfo *modinfop)
         cmn_err(CE_NOTE, "Inside _info");
         return(mod_info(&ml, modinfop));
    int
    _fini(void)
         cmn_err(CE_NOTE, "Inside _fini");
         return(mod_remove(&ml));
    /* Device configuration entry points */
    static int
    dummy_attach(dev_info_t *dip, ddi_attach_cmd_t cmd)
         cmn_err(CE_NOTE, "Inside dummy_attach");
         switch(cmd) {
         case DDI_ATTACH:
               dummy_dip = dip;
               if (ddi_create_minor_node(dip, "0", S_IFCHR,
                   ddi_get_instance(dip), DDI_PSEUDO,0)
                   != DDI_SUCCESS) {
                   cmn_err(CE_NOTE,
                         "%s%d: attach: could not add character node.",
                         "dummy", 0);
                   return(DDI_FAILURE);
               } else
                   return DDI_SUCCESS;
         default:
               return DDI_FAILURE;
    static int
    dummy_detach(dev_info_t *dip, ddi_detach_cmd_t cmd)
         cmn_err(CE_NOTE, "Inside dummy_detach");
         switch(cmd) {
         case DDI_DETACH:
               dummy_dip = 0;
               ddi_remove_minor_node(dip, NULL);
               return DDI_SUCCESS;
         default:
               return DDI_FAILURE;
    static int
    dummy_getinfo(dev_info_t *dip, ddi_info_cmd_t cmd, void *arg,
         void **resultp)
         cmn_err(CE_NOTE, "Inside dummy_getinfo");
         switch(cmd) {
         case DDI_INFO_DEVT2DEVINFO:
                                     *resultp = dummy_dip;
                                     return DDI_SUCCESS;
                                 case DDI_INFO_DEVT2INSTANCE:
                                     *resultp = 0;
                                     return DDI_SUCCESS;
                                 default:
                                     return DDI_FAILURE;
    /* Main entry points */
    static int
    dummy_prop_op(dev_t dev, dev_info_t *dip, ddi_prop_op_t prop_op,
      int flags, char *name, caddr_t valuep, int *lengthp)
      cmn_err(CE_NOTE, "Inside dummy_prop_op");
    //  return DDI_SUCCESS;
      return(ddi_prop_op(dev,dip,prop_op,flags,name,valuep,lengthp));
    static int
    dummy_open(dev_t *devp, int flag, int otyp, cred_t *cred)
       int status;
       cmn_err(CE_NOTE, "Inside dummy_open");
        return DDI_SUCCESS;
    static int
    dummy_close(dev_t dev, int flag, int otyp, cred_t *cred)
        cmn_err(CE_NOTE, "Inside dummy_close");
        return DDI_SUCCESS;
    static int
    dummy_read(dev_t dev, struct uio *uiop, cred_t *credp)
         cmn_err(CE_NOTE, "Inside dummy_read");
         return DDI_SUCCESS;
    static int
    dummy_write(dev_t dev, struct uio *uiop, cred_t *credp)
         cmn_err(CE_NOTE, "Inside dummy_write");
         return DDI_SUCCESS;
    static int
    dummy_ioctl(dev_t dev, int cmd, intptr_t arg, int mode,
                          cred_t *credp, int *rval)
         cmn_err(CE_WARN, "%s(%d) Received function : %d\n", __FUNCTION__, __LINE__, cmd);
         return(0);
    static int
    dummy_poll(dev_t dev,                // IN: Device number.
               short events,             // IN: Requested events.
               int anyyet,               // IN: Whether other fds have had events.
               short *reventsp,          // OUT: Mask of satisfied events. 
               struct pollhead **phpp) { // OUT: Set to a pollhead if necessary.
         cmn_err(CE_WARN, "%s(%d) \n", __FUNCTION__, __LINE__);
       return 0;
    }

    Read very carefully the file /usr/include/sys/ioccom.h.
    -r

  • Super 1.5 - source code level tracing for EJB, JSP and others

     

    Would you want to try new installation for Super 1.6?
    Please visit www.acelet.com
    Thanks.
    "Dominique Jean-Prost" <[email protected]> wrote:
    If only your installation tool was easy to use ...
    dom
    "Wei Jiang" <[email protected]> a écrit dans le message news:
    [email protected]...
    Super supports source code level tracing for Java and JSP!
    Announcement: Super 1.5 - an EJB/J2EE monitoring tool with
    SuperPeekPoke
    SuperLogging
    SuperStress
    SuperEnvironment
    It is free for development.
    You can anomyously down load it from:
    http://www.acelet.com.
    Super is a component based administration tool for EJB/J2ee.
    It provides built-in functionality as well as
    extensions, as SuperComponents. Users can install
    SuperComponents onto it, or uninstall them from it.
    Super has the following functions:
    * A J2EE/EJB monitor.
    * A gateway to EJB servers from different vendors.
    * A framework holding user defined SuperComponents.
    * A PeekPoke tool to read/write attributes from EJBs.
    * A full-featured logging/tracing tool for centralized, chronologicallogging.
    * A Stress test tool.
    * A global environment tool.
    It is written in pure Java.
    The current version support:
    * Universal servers.
    * Weblogic 5.1
    * Weblogic 6.0
    What is new:
    Version 1.50 August, 2001
    Enhancement:
    1. Source code level tracing supports EJB, JSP, java helper and other
    programs which are written in native languages (as long as you
    write correct log messages in your application).
    2. Redress supports JSP now.
    3. New installation with full help document: hope it will be easier.
    4. Support WebSphere 4.0
    Version 1.40 June, 2001
    Enhancement:
    1. Add SuperEnvironment which is a Kaleidoscope with TableView,TimeSeriesView
    and PieView for GlobalProperties.
    GlobalProperties is an open source program from Acelet.
    2. SuperPeekPoke adds Kaleidoscope with TableView, TimeSeriesView andPieView.
    Changes:
    1. The structure of log database changed. You need delete old installationand
    install everything new.
    2. The format of time stamp of SuperLogging changed. It is not localedependent:
    better for report utilities.
    3. Time stamp of SuperLogging added machine name: better for clusteringenvironment.
    Bug fix:
    1. Under JDK 1.3, when you close Trace Panel, the timer may not bestopped
    and
    Style Panel may not show up.
    Version 1.30 May, 2001
    Enhancement:
    1. Add ConnectionPlugin support.
    2. Add support for Borland AppServer.
    Version 1.20 April, 2001
    Enhancement:
    1. Redress with option to save a backup file
    2. More data validation on Dump Panel.
    3. Add uninstall for Super itself.
    4. Add Log Database Panel for changing the log database parameters.
    5. Register Class: you can type in name or browse on file system.
    6. New tour with new examples.
    Bug fix:
    1. Redress: save file may fail.
    2. Install Bean: some may fail due to missing manifest file. Now, itis
    treated
    as foreign beans.
    3. Installation: Both installServerSideLibrary and installLogDatabasecan
    be worked
    on the original file, do not need copy to a temporary directory anymore.
    4. PeekPoke: if there is no stub available, JNDI list would be emptyfor
    Weblogic5-6.
    Now it pick up all availble ones and give warning messages.
    5. Stress: Launch>Save>Cancel generated a null pointer exception.
    Changes:
    1. installLogDatabase has been changed from .zip file to .jar file.
    2. SuperLogging: If the log database is broken, the log methods willnot
    try to
    access the log database. It is consistent with the document now.
    3. SuperLogging will not read system properties now. You can put logdatabase
    parameters in SuperLoggingEJB's deployment descriptor.
    Version 1.10 Feb., 2001
    Enhancement:
    1. Re-written PeekPoke with Save/Restore functions.
    2. New SuperComponent: SuperStress for stress test.
    3. Set a mark at the highlighted line on<font size=+0> the Source Code
    Panel (as a work-a-round for JDK 1.3).</font>
    4. Add support for WebLogic 6.0
    Bug fix:
    1. Uninstall bean does physically delete the jar file now.
    2. WebLogic51 Envoy may not always list all JNDI names. This is fixed.
    Version 1.00 Oct., 2000
    Enhancement:
    1. Support Universal server (virtual all EJB servers).
    2. Add Lost and Found for JNDI names, in case you need it.
    3. JNDI ComboBox is editable now, so you can PeekPoke not listed JNDIname
    (mainly
    for Envoys which do not support JNDI list).
    Version 0.90: Sept, 2000
    Enhancement:
    1. PeekPoke supports arbitrary objects (except for Vector, Hashtable
    and alike) as input values.
    2. Reworked help documents.
    Bug fix:
    1. Clicking Cancel button on Pace Panel set 0 to pace. It causes
    further time-out.
    2. MDI related bugs under JDK 1.3.
    Version 0.80: Aug, 2000
    Enhancement:
    1. With full-featured SuperLogging.
    Version 0.72: July, 2000
    Bug fix:
    1. Ignore unknown objects, so Weblogic5.1 can show JNDI list.
    Version 0.71: July, 2000
    Enhancement:
    1. Re-worked peek algorithm, doing better for concurent use.
    2. Add cacellable Wait dialog, showing Super is busy.
    3. Add Stop button on Peek Panel.
    4. Add undeploy example button.
    Bug fix:
    1. Deletion on Peek Panel may cause error under JDK 1.3. Now it worksfor
    both
    1.2 and 1.3
    Version 0.70: July, 2000
    Enhancement:
    1. PeekPoke EJBs without programming.
    Bug fix:
    1. Did not show many windows under JDK 1.3. Now it works for both 1.2and
    1.3
    Changes:
    1. All changes are backward compatible, but you may need to recompilemonitor
    windows defined by you.
    Version 0.61: June, 2000
    Bug fix:
    1. First time if you choose BUFFER as logging device, message willnot
    show.
    2. Fixed LoggingPanel related bugs.
    Version 0.60: May, 2000
    Enhancement:
    1. Add DATABASE as a logging device for persistent logging message.
    2. Made alertInterval configurable.
    3. Made pace for tracing configurable.
    Bug fix:
    1. Fixed many bugs.
    Version 0.51, 0.52 and 0.53: April, 2000
    Enhancement:
    1. Add support to Weblogic 5.1 (support for Logging/Tracing and
    user defined GUI window, not support for regular monitoring).
    Bug fix:
    1. Context sensitive help is available for most of windows: pressF1.
    2. Fix installation related problems.
    Version 0.50: April, 2000
    Enhancement:
    1. Use JavaHelp for help system.
    2. Add shutdown functionality for J2EE.
    3. Add support to Weblogic 4.5 (support for Logging/Tracing and
    user defined GUI window, not support for regular monitoring).
    Bug fix:
    1. Better exception handling for null Application.
    Version 0.40: March, 2000
    Enhancement:
    1.New installation program, solves installation related problems.
    2. Installation deploys AceletSuperApp application.
    3. Add deploy/undeploy facilities.
    4. Add EJB and application lists.
    Change:
    1.SimpleMonitorInterface: now more simple.
    Version 0.30: January, 2000
    Enhancement:
    1. Add realm support to J2EE
    2. Come with installation program: you just install what you want
    the first time you run Super.
    Version 0.20: January, 2000
    Enhancement:
    Add support to J2EE Sun-RI.
    Change:
    1. Replace logging device "file" with "buffer" to be
    compliant to EJB 1.1. Your code do not need to change.
    Version 0.10: December, 1999
    Enhancement:
    1. provide SimpleMonitorInterface, so GUI experience is
    not necessary for developing most monitoring applications.
    2. Sortable table for table based windows by mouse
    click (left or right).
    Version 0.01 November., 1999:
    1. Bug fix: An exception thrown when log file is large.
    2. Enhancement: Add tour section in Help information.
    Version 0.00: October, 1999
    Thanks.

  • LaserJet P1505n printing slow just for user-level accounts in Win7

    I have several workstations running Win7 Pro 64-bit that have been installed as replacements for XP machines.  All of them print to one of several P1505n printers, and are using the latest drivers from HP.  Under XP there were no problems printing to these printers, but the Win7 machines have significant delays when trying to print.  The Windows test page prints instantaneously, but printing from any other application has a delay of up to a full minute before the job begins to print.  Once the job prints, it prints without issue.
    One thing that I have noticed during my testing seems to point to permissions.  If I am logged in using my admin-level account, everything prints as it should, with no delays at all.  Once I log in with a user-level account, however, the delays begin.  I found the driver files at C:\Windows\System32\spool\drivers\x64\3, but giving "everyone" full control over those files does not help.
    Is there anything else that I should be looking at?
    Thanks in advance!
    Donny

    In the end, I was able to resolve the problem by installing the Vista x64 drivers.  No playing with permissions necessary.

  • Issue in User Level Simulation in GRC 10.0

    Hello Every one,
    Before i Jump into the question, please find below the screen shot which tells about the B.P(Business process),Functions created in test system(GRC 10.0), where as the roles and corresponding users which have been created in back end system connecting to GRC 10.0.
    Now when i am trying to run a risk analysis on user TEST_RISK(TEST_ROLE_RISK role is assigned and pfa the authorizations in the role), i will be shown the Risk R001.
    Now i am trying to run user Level Simulation on the above user TEST_RISK and i am trying to simulate by adding a new role TEST_ROLE_RISK3 as shown in the below screenshot at Action level,Permission Level,Critical Action level ,Critical permission level.
    Even though i select the option, Risk from Simulation only, when i try to execute at action level , it is also showing me the risk which coming from the actual role assigned but not from the simulating one.
    Thanks and Regards,
    Naga.

    Hi Naga,
    there are some notes which might help to fix the problem. Especially the first might fix your problem.
    http://service.sap.com/sap/support/notes/1895502
    http://service.sap.com/sap/support/notes/1953347
    Please let us know if it helped.
    Regards,
    Alessandro

  • Remove Personalization at User Level - Saved Searches

    All,
    There is a problem in the Saved Searches. We are on 11.5.10. The page immeditely throws error when a custom view is created using "Save Search" button.
    It says,
    ## Detail 0 ##
    java.lang.NullPointerException
    at oracle.apps.fnd.framework.webui.OADataBoundValueCustomization.getValue (OADataBoundValueCustomization.java:191)
    I am not able to revert this view created through save search. I tried by setting the Disable Self-Service Personal to Yes at that user level where i created the view and bounced apache. But the error still exists.
    Is there any means like by "Functional Administrator" responsibility where these views can be removed?
    Thanks,
    Padmaja

    Pl see if a similar issue reported in MOS Doc 859190.1 (Personal Worklist Returns NullPointerException When 'Disable Self - Service Personal' Is Set To Yes) can help
    HTH
    Srini

  • Management report doesnt show violations at user level.

    Dear all,
    I have a problem that the management report in 5.3 SP04 doesnt show violations at user level. At role level it works fine.
    I've tried full sync and generated a new management report. The problem remains.
    No. of Users Analyzed 859
    Users with no Violations 859 100%
    Users with Violations 0 0%
    Number of Roles Analyzed 2,986
    Roles with no Violations 2,510 84%
    Roles with Violations 476 16%

    Hi Vit,
      Follow both the notes mentioned by Sahad. Check the data in virsa_cc_prmvl table. Run the following script and see if you can see any data:
    select * from virsa_cc_prmvl where genobjtp=1
    If you don't have any data then there was some issue with user analysis so you will have to run the analysis again. If there is data then run the management report again and you should see the data.
    Regards,
    Alpesh

  • Setting Default Url At User Level? Help !!

    Hi-
    After a user logs on .. I would like to point that user to a specific default url .. if I specify the default url at the domain level:
    manage domains
    select domain
    select user tab
    show advanced settings
    delete default url: /DesktopServlet
    add new url
    It works fine when the default url is set at this level .. problem is it then points EVERY user who is a member of that domain to the specified url ..
    Logically.. one would think that the correct approach would be to specify the defaul url for a particular user at the user level:
    manage domains
    select domain
    select role
    select users
    click username
    click user tab
    show advanced settings
    delete default url: /DesktopServlet
    add new url
    However, when this approach is used .. the user is sent to:
    /DesktopServlet
    in spite of the fact that the users default url had been set to a specific url other than:
    /DesktopServlet
    Question:
    Is it possible to set a users default url to a specified url and have it only affect that user?
    If so .. how?
    Does anyone have any recommendations as to how to make this work?
    Essentially .. I would like to create a domain with multiple users and have each user within that domain sent to a distinct and unique url .. how can I accomplish this objective?
    And if it simpy can't be done .. please let me know .. it would be much appreciated .. Happy Holidays .. to all ..
    Sincerely .. jesus ..

    Thanks for your response .. as it is .. I was able to accomplish the stated objective by using the Url Scraper to point each user to a page containing a meta-refresh tag which causes the desktop to appear for a fraction of a second before the user is advanced to the desired url .. sans the desktop and with the secure lock in the right hand corner .. thanks again for your response .. much appreciated .. jesus ..

  • Row level security problem.

    Hy all, I'm new to Oracle and though i've google it a lot I didn't manage to find a solution to this problem:
    I'm using sql developer and Oracle 10g.
    I have this two tables :
    CREATE TABLE HR_employees
    (codHR NUMBER(3) CONSTRAINT pk_hr PRIMARY KEY,
    coddep NUMBER(4) not null,
    DB_user VARCHAR2(10),
    and
    CREATE TABLE Candid
    (codcan NUMBER(2) CONSTRAINT PK_candidat PRIMARY KEY,
    codHr NUMBER(3) NOT NULL,
    CONSTRAINT FK_CODHR FOREIGN KEY (codHR) REFERENCES HR_employees (codHR) );
    I tried to implement row level security on them by using two views:
    CREATE OR REPLACE VIEW employees_v AS
    SELECT * FROM hr_employees
    WHERE DB_user = user
    UNION
    SELECT * FROM hr_employees
    WHERE codhr=(SELECT codhr FROM hr_employees WHERE db_user=user );
    AND coddep IN (4000,5000);
    CREATE OR REPLACE VIEW candid_v AS
    SELECT cand.*
    FROM candid cand , hr_employees hr
    WHERE cand.codhr= hr.codhr
    AND hr.db_user=user
    UNION
    SELECT cand.* FROM candid cand, hr_employees hr
    WHERE hr.coddep=(SELECT H.coddep FROM hr_employees H
    WHERE H.db_user=user
    AND H.coddep IN (4000,5000) );
    What I want to do is to disconnect and connect with another user from SQL Developer and see different fields based on the user and the department, Sql developer doesn't seem to recognize the user connected to the database..everytime I receive a no row selected statement, only when I connect with SYS and put the actual username WHERE H.db_user='SYS' they seem to work. I have created the tables with SYS and granted Select on the views to the users, the users don't have privilegies on the actual tables.
    Sorry for the bad english,it's a foreign language to me ,
    I hope you can help me

    Hi,
    Damorgan is right: "Row level security has nothing to do with views" in the sense that the two are independent. You can have row-level security with or without views, and you can have views with or without row-level security. dbms_rls is a very useful and powerful way to implement row-level security, and you should check it out, but it's not necessarily the answer to all row-level security problems.
    I'm not sure I understand your problem beyond the need to restrict user A's access to two tables.
    If which rows user A is allowed to see depends on the results of queries from those same tables, including rows that user A is not allowed to see (that is, you need to do sub-queries with some other user's (let's call this user B's) privileges), then you can do those sub-queries in stored procedures.
    Stored procuderes can run with the privileges of the procedure owner, regardless of who is calling them. Using a function called user_codhr owned by user B, you could define a view like this:
    CREATE OR REPLACE VIEW employees_v AS
    SELECT * FROM hr_employees
    WHERE DB_user = user
    OR    (   codhr = user_codhr
          AND coddep IN (4000,5000)
          );If the results of the function will be the same throughout the session, you can call it once, at the beginning of your session, and save the results in a SYS_CONTEXT varaible or a global temporary table.
    If you need more help, post a more detailed example of the problem, such as "With this data in the table, B should see all rows but A should see only ...".

  • AC 10.1 Empty screen on User Level analysis

    Hi all,
    We have migrated our 5.3 Access Control System to 10.1 and all the post-installation steps are applied. We loaded the user and roles from our ERP System, created rules and generated them for our system. Parameter 1027 – Enable offline risk analysi is set to YES. We also ran the batch job for the risk analysis in Background (transaction GRAC_BATCH_RA). When we run the NWBC -> Access Management -> User Level for our System we get just an empty window – no error message, nothing. It doesn’t make a difference if we run it on action level, permission level with offline data or without, in foreground or background, the result is just an empty window. What might be the issue here ?
    Thanks in advance
    Bernd

    Hello Bernd,
    In GRC 10.1 there are a few new things. Can you tell which view you are running the report on? There are three in GRC 10.1; namely - Remediation view, Business View and Technical View. See screen below.
    Most problems are on Remediation View (which is selected by default when you start running the RA). For traditional risk analysis report please run on the "Technical View" and see if you get results.
    To fix the issue with the remediation view's blank screen please review following notes:
    2040204 - Remediation View does not show up while running risk analysis
    2035538 - Remediation view in Risk Analysis does not show any data
    2099999 - Remediation View screen shows blank while Risk Analysis
    Thanks
    Sammukh

  • Top Level Navigation Problem

    Hi guys,
    recently, I ran into something really strange. The Top Level Navigation (TLN) became faulty. If the user clicks on certain entries in First Level Navigation or Second Level Navigation the content area is not loaded properly. The content area stays empty as well as the detailed navigation iView (no navigation entries listed). Furthermore, the TLN does not get updated.
    The weird thing is it only affects a few users and the set of affected navigation tabs is different for every user. The problem affects standard tabs (System Administration, Content Administration, etc.) as well as custom tabs. The set of affected users and the set of affected tabs seems to be arbitrary chosen.
    A new log entry is written every time the problem occurs. Find an example below: 
    <i>
    [PortalNode.fireEventOnNode.toEventListener] event=onNodeReadyEvent, target=com.sap.netweaver.coll.CollaborationDetailedNavigation, operation failed
    [EXCEPTION]
    java.lang.NullPointerException
         at com.sapportals.portal.navigation.CollaborationNavTree.isCollaborationNode(CollaborationNavTree.java:490)
         at com.sapportals.portal.navigation.CollaborationNavTree.doOnNodeReady(CollaborationNavTree.java:227)
         at com.sapportals.portal.prt.component.AbstractPortalComponent.handleEvent(AbstractPortalComponent.java:388)
         at com.sapportals.portal.prt.pom.ComponentNode.handleEvent(ComponentNode.java:252)
         at com.sapportals.portal.prt.pom.PortalNode.fireEventOnNode(PortalNode.java:369)
         at com.sapportals.portal.prt.pom.AbstractNode.addChildNode(AbstractNode.java:340)
         at com.sapportals.portal.pb.PageBuilder.createAndAddEmbeddediView(PageBuilder.java:174)
         at com.sapportals.portal.pb.PageBuilder.createiView(PageBuilder.java:387)
         at com.sapportals.portal.pb.PageBuilder.createAndAddiViews(PageBuilder.java:230)
         at com.sapportals.portal.pb.PageBuilder.doOnNodeReady(PageBuilder.java:572)
         at com.sapportals.portal.prt.component.AbstractPortalComponent.handleEvent(AbstractPortalComponent.java:388)
         at com.sapportals.portal.pb.PageBuilder.handleEvent(PageBuilder.java:741)
         at com.sapportals.portal.prt.component.CachablePortalComponent.handleEvent(CachablePortalComponent.java:703)
         at com.sapportals.portal.prt.pom.ComponentNode.handleEvent(ComponentNode.java:252)
         at com.sapportals.portal.prt.pom.PortalNode.fireEventOnNode(PortalNode.java:369)
         at com.sapportals.portal.prt.pom.AbstractNode.addChildNode(AbstractNode.java:340)
         at com.sapportals.portal.prt.core.PortalRequestManager.runRequestCycle(PortalRequestManager.java:642)
         at com.sapportals.portal.prt.connection.ServletConnection.handleRequest(ServletConnection.java:240)
         at com.sapportals.portal.prt.dispatcher.Dispatcher$doService.run(Dispatcher.java:522)
         at java.security.AccessController.doPrivileged(AccessController.java:242)
         at com.sapportals.portal.prt.dispatcher.Dispatcher.service(Dispatcher.java:405)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at com.sap.engine.services.servlets_jsp.server.servlet.InvokerServlet.service(InvokerServlet.java:156)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:390)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:264)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:347)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:325)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:887)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:241)
         at com.sap.engine.services.httpserver.server.Client.handle(Client.java:92)
         at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:148)
         at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33)
         at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)
         at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
         at java.security.AccessController.doPrivileged(AccessController.java:215)
         at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:100)
         at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:170)
    </i>
    While searching SDN I found a SAP Note that might be interesting. SAP Note 982496 contains the description of a similar problem with almost the same error message. However, this SAP Note describes a problem of NW 2004 SPS 17. A problem that should be solved in newer releases. We patched our system last time (NW2004s SPS 09) a few month ago. We never had any similar problems until last week when the above described problems started.
    Unfortunately, the problem starts to escalate. More and more users and more and more navigation tabs are affected.
    Does anyone of you have any experience with this kind of problems? Please suggest how to troubleshoot and solve this very annoying problem. Of course, I am going to reward helpful answers.
    Best regards,
    Martin

    Hi Harini,
    thanks for your suggestions.
    1) Clearing the browser cache did not help at all.
    2) We disabled the navigation cache a long time ago. That means navigation is not cached.
    3) We are going to restart the portal server today. I keep you updated.
    Best regards,
    Martin

  • PM Organization Units Authorization on User Level

    Hello experts,
    Is there a way to add authorization for an organization unit (i.e. Planning Plant) on a user (SU01) level and not on a authorization objects (PFCG) level?
    For example,
    I would like to create the following Role (profile):
    ZPM_AUT_EQM_EQUIPMENT_DISPLAY
    This role should be able to display equipment from the Plant Maintenance module.
    However our problem is, we would like to create authorization levels with organizational units for each user:
    For example:
    User jsmith has ZPM_AUT_EQM_EQUIPMENT_DISPLAY assigned but can only display equipment from Planning Plant SL01.
    We know we can create this authorization creating several roles, like:
    ZPM_AUT_EQM_EQUIPMENT_DISPLAY_SL01
    ZPM_AUT_EQM_EQUIPMENT_DISPLAY_SJ01
    ZPM_AUT_EQM_EQUIPMENT_DISPLAY_AG01
    but our idea is not create several roles, but to assign the Planning Plant authorization on a user level and leave just one role so we would only need ZPM_AUT_EQM_EQUIPMENT_DISPLAY.
    Is there a way to do this?
    Thank you in advanced for your replies.
    Best regards,
    Fernando Montenegro

    Hi ,
    Could you share about your solution ? I think I have face the same problem as yours.

  • Organization Units Authorization on user level

    Hello experts,
    Is there a way to add authorization for an organization unit (i.e. Company Code) on a user (SU01) level and not on a authorization objects (PFCG) level?
    For example,
    I would like to create the following Role (profile):
    ZFI_AP_REPORT_DISPLAY
    This role should be able to display AP report from the Financial module.
    However our problem is, we would like to create authorization levels with organizational units for each user:
    For example:
    User Anson has ZFI_AP_REPORT_DISPLAY assigned but can only display Report from Company Code 3202.
    We know we can create this authorization creating several roles, like:
    ZFI_AP_REPORT_DISPLAY_3201
    ZFI_AP_REPORT_DISPLAY _3202
    ZFI_AP_REPORT_DISPLAY_3203
    but our idea is not create several roles, but to assign the Company Code authorization on a user level and leave just one role so we would only need ZFI_AP_REPORT_DISPLAY.
    Is there a way to do this?
    Thank you in advanced for your replies.
    Christine Tseng

    I agree with Jurjen.  There is no point creating a "new" authorisation concept for a few transactions.  If you use standard authorisation objects for the check in your custom tcodes then you will likely have very little work to do if you assign those tcodes to existing roles.
    Even using a custom auth object & creating the variants will take up no more time than doing something like repeating the variable functionality in BI or messing about with PIDs in the UMR (which I definitely do not recommend).  By sticking with the standard concept you ensure consistency, making it much easier to support and/or handover if you move on from the role.

  • How can we enable the trace at schema / user level

    Hi ,
    I knew how to enable the trace at session level and system level.
    How can we enable trace at schema / user level.
    Thanks
    Naveen

    I still don't understand.
    As far as I know, 'trace' means 'to emit information about a subset of the steps being taken through code, generally to profile timing or identify code paths'.
    As far as I know, a user and a schema are passive. There is absolutely no code 'running' against a user or a schema. I have no idea what could be 'traced' for a user or schema that is not already available in the data dictionary.
    Further, a schema is nothing other than a named set of database objects. The name happens to be tied to a specific userid. So a schema could be considered a special kind of userid - although that is technically incorrect.
    A session, on the other hand, is active. There is code running, there is memory assigned. It happens to link to the connection established by a user, using a specific userid.
    I think you have told us you know how to turn on tracing for a session.
    Why can you not turn on the traciong for all the sessions for a userid?

Maybe you are looking for

  • Windows 7 not forgetting disconnected USB devices, only on one PC, but not others/difer OS

    Okay so I've got 3 computers: 1. Asus M5A99X EVO MOBO, Windows 7 Ultimate 64bit 2. Lenovo Ideapad u310 LAPTOP, Windows 8 (just 8) 3. Asrock z87e-ITX MOBO, Windows 7 Ultimate 64 bit and Windows 8.1 Pro 64-bit This issue only happens on computer 3 unde

  • SharePoint 2010 100% cpu w3wp.exe after windows server update desember 2013

    Hi Using SharePoint 2010 with 2 frontend webservers and 1 appserver: Our ApplicationPool for our portal workerprocess has for a second time gone up to and stuck on 99% CPU on one of our 2 frontend webservers.  What happens is that this server falls o

  • Project Management Cannot see Financials Tab

    I have created a new responsibility for requirement where user wants to only be able to have what is in Projects List, but I can not get the tabs to come through, I only need the Financials one, but I am not able to figure out which one. Guidance muc

  • Getting errors in EBS

    Hi, i have taken a standard oracle report and i am trying to alter the report. RDBMS : 11.1.0.7.0 Oracle Applications : 12.1.1 Report Builder 10.1.2.0.2 I am getting the following errors in EBS: Enter Password: REP-1219: 'F_Deductions_Amount' has no

  • Versions of MD64.

    Dear All, I am using 3 versions of MD64 for my reportings (i.e. 01, 02 & 03) & 00 for MRP. Problem is that when I run MRP it considers all version & creates 4 plan orders on the basis of records of each versions. I want to exclude rest all version fr