Asynchronous network io

I read java doc (http://java.sun.com/javase/6/docs/api/java/nio/channels/SocketChannel.html) saying that e.g. socketchannel is non-blocking. After searching on the internet, some say java nio is still a based on syncrhonous style. If one needs asynchronous io, additonal frameworks e.g. netty, mina, etc are required; or one has to wait the relaased of jdk7.
I am confused because, from the javadoc it seems that some java nio methods can use asynchronous operation. Isn't this asynchronous approach? Or is there any resrouce/ doc detailing about this?
Many thanks

I am learning to build a distributed system which has assumption with asychronous networking. And I read some articles on the internet saying that though nio (e.g. SocketChannel) is non-blocking, somehow it is still synchronous.There are three cases:
1. Blocking I/O (java.net or blocking java.nio): if you read and the socket receive buffer is empty, you block until some data arrives; if you write and the socket send buffer is full, you block until some room is created (by the TCP stack writing out to the network).
2. Non-blocking I/O (java.nio in non-blocking mode): if you read and the socket buffer is empty, it returns zero immediately, otherwise you block for a short period of time while data is shifted from the socket receive buffer into your application; similarly, if you write and the socket send buffer is full, it returns zero immediately, otherwise you block for a short period of time while data is shifted from your application into the socket send buffer.
3. Asynchronous I/O (JDK 7): whether you read or write, the method returns immediately under all circumstances to your code and you are given a Future object via which you can interrogate status later on..
You can see that for your purposes (2) and (3) are both 'asynchronous' in your sense.
What happens on the network is always asynchronous.
My understanding is that in asynchronous networking enviroment, a node P1 may send a message to another node P2, and perhaps the network connection may be very slow or even disconnect, but nodes P1 and P2 are still alive. In this case, if using synchronous api, P1 may assume that P2 crashes (but P2 does not crash), which is not correct.The only way that can happen via TCP is if you set a read timeout or the keepalive feature. Which of the 3 APIs you use makes no difference to this.
Using asynchronous api would prevent such issueNo it wouldn't.

Similar Messages

  • Site to Site VPN RV042

    Hi Please could someone help me regarding my ISSUE with VPN site to site.
    I have setup gateway to gateway unfortunetly I don't have any Static IPs so I setup 2 DynDNS.org Accounts at both Sites. Both RV042 Connect to another Router/Modem .
    I have set them both as Router in the Router Mode and not as Gateway.  On the VPN Tab the Status just stays at "waiting for connection" I can see the correct Dynamic IP for the remote connection in the main and remote site of the other.  I can ping both dyndns names as well.  But can't connect...
    The VPN log states the following.
    ERROR: asynchronous network error report on eth1 for message to  105.237.1.xx port 500, complainant 192.168.137.153: No route to host  [errno 148, origin ICMP type 3 code 1 (not authenticated)]
    With this being the main site and 192.168.138.0 the remote site, main site has a subnet of 192.168.137.0
    Please could someone help me or point me in the right direction? Thanks In advance.

    Hi Etienne, so there lies the problem. If you're not able to telnet the  WAN IP address on port 500 or 4500, it means it is not making it to the  VPN server (RV042). It means your upstream routers are blocking the connection. So... you will need to get that figured out or remove those routers. You may try to port forward ALL ports or try to set up a DMZ on the upstream routers.
    A simple test you can try is setting the remote management on the RV042 to any port number you want then make a forwarding rule for that port number to the RV042 WAN IP address. If your upstream routers work correctly, you would be able to log in to the RV042 on whatever port you want.
    An example is-
    RV042 remote management is port 44333
    RV042 WAN IP is whatever you have specified
    Port forward rule on Netgear for port 44333 to RV042 WAN IP address
    Dyndns address with port affixed on the end
    https://dyndns.org:44333
    With this, if your upstream router is configured correctly you can log in to the RV042 over the internet.
    Additionally, by default, the RV042 WAN does not respond to ping. So if you're able to ping your dyndns it is because your upstream is replying, not because the RV042 replies.
    -Tom
    Please mark answered for helpful posts

  • "Portable" way to do message passing between threads?

    (I posted this on the Apple Developer Forums already, but since that forum is only accessible to registered and paid iPhone developers, I thought it would be nice to put it here as well so as to get some more potential eyeballs on it. I apologize if this kind of "cross-posting" is not kosher/is frowned upon around here.)
    Hey everybody,
    "Long-time listener, first-time caller," heh.
    I've been working for the past 2-3 months on my very first iPhone app. Actually, what I've been working on is a framework that I plan to use in an iPhone app of my own but which I am also trying to write for the "lowest-common-denominator" so that I (and others) can use it in other apps written for both Mac and iPhone.
    Not only is this my first time writing an iPhone app, it is my first time writing for any Apple platform. In fact, it is my first time using Objective-C, period. I cannot stress this enough: I am a "n00b." So go easy on me. I also have not worked with threading before this, either, on any platform, so the learning curve for me here is rather significant, I'm afraid. I am NOT afraid of either taking the time to learn something properly OR of rolling up my shirtsleeves and working. However, on account of my experiences so far, I am finding myself (not to flame or anything!) quickly becoming frustrated by and disillusioned with not so much Objective-C itself, but the Foundation frameworks.
    So with that said, read on, if you dare...
    The basic idea behind my project is that the framework I am writing will present an API to developers which will allow them to write client apps that interact with a particular network appliance or network-aware embedded system. I already have my basic set of classes up and functioning, and the framework works to my satisfaction both on MacOS and iPhoneOS. The platforms I am targeting are MacOS X Tiger 10.4 and later, and iPhoneOS, and up until this point, I've managed to keep a codebase that works on all of the above.
    What I wanted to do next was add some multithreaded goodness to the mix. (Woe is me.) I have asynchronous network socket I/O working within the main thread, and it, in fact, works a treat. In my test app on the phone, I've managed to keep the UI nice and responsive by using the main thread's runloop efficiently. But even though TCP async I/O works fine within the main thread, I want to be able to split out and offload the processing of any data received by the app from the appliance to its own thread. (It is possible, and even desirable, for an application using this framework to be connected to multiple appliances simultaneously.)
    My idea, in order to try to keep things as simple and as clean as possible, was to implement a wrapper class that presented my other main class as an "actor." So, rather than instantiating my main class, one would create an instance of the wrapper class which would in turn control a single instance of my main class and spawn its own thread that the network connection and all data processing for that particular connection would run within.
    (I hope I'm making sense so far...)
    Out of the gate, writing a subclass of NSThread sounds like the logical design choice for an "actor-type" thread, but because I was trying to maintain Tiger compatibility, I stuck with +detachNewThreadSelector:etc.
    Once I decided to pursue the actor model, though, the main problem presented itself: how to best pass messages between the main thread and all of the "actor" threads that might be spawned?
    I stumbled upon -performSelector:onThread:withObject:, and knew instantly that this was exactly what I was looking for. Unfortunately, it doesn't exist on Tiger; only its much more limited little brother -performSelectorOnMainThread:withObject: does. So I kept looking.
    All of the pre-Leopard documentation, tutorials, and sample code that I read indicated that to pass messages between threads, I needed to basically pretend that the threads were separate processes and use the expensive Distributed Objects mechanism to get messages back and forth. Unfortunately, even if that WAS a desirable option, iPhoneOS does not have any support for DO! Grrr...
    Finally, I thought I found the answer when I ran into a third-party solution: the InterThreadMessaging library from Toby Paterson (available @ http://homepage.mac.com/djv/FileSharing3.html). In this library, the author basically implemented his own version of -performSelector:onThread:withObject: called -performSelector:withObject:inThread:. Sounds close enough, right? And actually, it is pretty darn close. It's made to do exactly what it sounds like, and it does it in a platform-neutral way that works on pre-Leopard systems as well as iPhoneOS, using Mach ports instead of DO.
    (...wellll, ALMOST. I discovered after I built a small test app around it that it actually isn't "iPhone-clean." The author used an NSMapTable struct and the NSMap*() functions, which don't exist in iPhoneOS, and he also implemented the handlePortMessage delegate method, but although iPhoneOS has NSPort, it DOESN'T have NSPortMessage. GAAARGH. So I took the time to replace the NSMapTable stuff with NSValue-wrapped objects inside of an NSMutableDictionary, and replaced the handlePortMessage method implementation with a handleMachMessage method, which took some doing because I had to figure out the structure of a Mach message, NO thanks to ANY of the available documentation...)
    Once I started using it, though, I quickly discovered that this implementation wasn't up to snuff. My "actor" class and my main thread will be passing a ton of messages to each other constantly whenever there is network activity, and with InterThreadMessaging, I found that whenever activity started to ramp up, it would collapse on itself. This mostly took the form of deadlocks. I found a note that someone else wrote after experiencing something similar with this library (quoted from DustinVoss @ http://www.cocoadev.com/index.pl?InterThreadMessaging):
    "It is possible to deadlock this library if thread A posts a notification on thread B, and the notification on B causes a selector or notification to be posted on thread A. Possibly under other circumstances. I have resolved this in my own code by creating an inter-thread communication lock. When a thread wants to communicate, it tries the lock to see if another thread is already using the InterThreadMessaging library, and if it can't get the lock, it posts a message to its own run-loop to try again later. This is not a good solution, but it seems to work well enough."
    So I tried implementing what he described using a global NSLock, and it did help with some of the deadlocks. But not all. I believe the culprit here is the Mach ports system itself (from the NSPortMessage documentation for -sendBeforeDate:):
    "If the message cannot be sent immediately, the sending thread blocks until either the message is sent or aDate is reached. Sent messages are queued to minimize blocking, but failure can occur if multiple messages are sent to a port faster than the portís owner can receive them, causing the queue to fill up."
    InterThreadMessaging in fact calls -sendBeforeDate: and exposes the deadline option, so I tried setting a really short time-to-live on the Mach messages and then intercepted any NSPortTimeoutExceptions that were thrown; upon catching said exceptions, I would then re-queue up the message to be sent again. It worked, but Performance. Was. A. Dog. At least the message queue wouldn't be full indefinitely anymore, causing the main thread to block, but during the whole time that these messages were expiring because the queue was full and then being re-queued, either the main thread was trying to send more messages or the actor thread was trying to send more messages. And as far as I can tell, the Mach ports queue is global (at the very least, there is seemingly only one per process). The message would get through with this model...eventually.
    JUST IN CASE the problem happened to be something I screwed up as I was rewriting portions of the InterThreadMessaging library so that it would compile and work on the iPhone SDK, I substituted in the original version of the library in my Mac test app to see if any of these problems became non-issues. I found that both versions of the library -- mine and the original -- performed identically. So that wasn't it.
    Finally, in frustration I said, "screw it, I'm going to try it the Leopard way," and replaced all of the method calls I was making to InterThreadMessaging's -performSelector:withObject:inThread: with calls to Foundation's native -performSelector:onThread:withObject: instead, changing nothing else within my code in the process. And wouldn't you know: IT WORKED GREAT. Performance was (and is) fantastic, about on-par with the non-threaded version when only dealing with a single connection/instance of my class.
    So, in the end, I was able to do nothing to salvage the InterThreadMessaging implementation of cross-thread method calling, and as far as I can tell, I'm out of (good) options. And thus my mind is filled with questions:
    How is the Leopard -performSelector:onThread: method implemented? I'm guessing not using Mach ports, given that I didn't have the same blocking & deadlocking problems I had with InterThreadMessaging. Is it possible to re-implement this Leopard+ method in a similar manner as a category to NSObject under Tiger? Or is it possible, perhaps, to increase the size of the Mach ports queue so that InterThreadMessaging works at a sane level of performance? Or -- I'm getting desperate here -- is there any way that I could trick -performSelectorOnMainThread: to target a different thread instead? (I am assuming here that -performSelectorOnMainThread is implemented under-the-hood much like the new -performSelector:onThread: is implemented, but with a hard-coded NSThread pointer built-in to the code, and that the new method just exposes a more flexible interface to what is basically the same code. I'm probably wrong...) Is there another third-party library out there that I've missed that fits my requirements for being able to do message-passing between threads in an efficient and portable manner?
    I refuse to believe that there is no way for me to maintain compatibility with all of the platforms I wish to support without having to resort to making preprocessor #ifdef spaghetti out of my code. And there SURELY has to be a better way of doing cross-thread message passing in Tiger without using Distributed Objects, for Pete's sake! Is this really how people did it for years-on-end since the dawn of NeXT up until the advent of Leopard? And if there really, genuinely wasn't another alternative, then what is up with the lack of DO in iPhoneOS?? Does Apple seriously intend for developers who have good, solid, tested and working code to just chuck it all and start over? What if there was some aspect of DO that previous implementations relied upon that cannot be recreated with simple -performSelector:onThread: calls? (I don't know what those aspects would be...just a hypothetical.) I mean, I can understand needing to write new stuff from scratch for your UI given how radically different the interface is between the Mac and iPhone, but having to reimplement back-end guts such as something as elemental as threads...really?!
    I do laud the inclusion of the new method in Leopard as well as the new ability to subclass NSThread itself. But for those of us that need to support Tiger for one reason or another, some of these restrictions and omissions within iPhoneOS seem like rather pointless (and frustrating) roadblocks.
    As I hope is obvious here, I have tried to do my homework before throwing up my hands and pestering y'all. If you have the patience to deal with me, please tell me what I am missing.
    Thanks for taking the time to read,
    -- Nathan

    Thanks again for your patience. Comments below.
    etresoft wrote:
    It is pretty unusual that anyone would want to call perfomrSelector on any thread other than the main thread.
    What I described in my original post was not a worker thread, but an "actor."
    It is hard for me to answer this question because there are so many options available to do "message passing". The fact that you think there are so few tells me that you really aren't sure what you need to use.
    I didn't say there were few options for message passing. I said there were few options for message passing that fit my criteria, which are that any potential solutions should both A) work efficiently and with good performance, and B) be available both pre-Leopard AND on the iPhone. -performSelector: ain't available before Leopard. Distributed Objects is overkill. Kernel Mach messages apparently have a high overhead, too, as my experience with the third-party library I wrote about in my original message shows.
    ...consider notifications.
    I thought notifications couldn't be posted across threads, either. How do I post a notification to another thread's default notification center or notification queue from a different thread?
    The notification center is owned by the process. Each run loop can listen for just the notifications it wants. You don't "pass" or "send" notifications, you run then up the flagpole for all to see.
    I am aware of how to use notifications. The documentation for NSNotificationCenter clearly states that "In a multithreaded application, notifications are always delivered in the thread in which the notification was posted, which may not be the same thread in which an observer registered itself."
    So, again, I don't see how one thread can post a notification in such a way that the observer's registered method is executed in another thread (posting notifications "across threads"). This probably isn't a big deal if you are using mutexes (assuming you don't actually care which thread carries out the task associated with the notification posting), but as I said before, this is not what I'm after.
    I don't know what you are really after.
    Allow me to attempt to explain a second time, in a more concise fashion.
    My app will have multiple, persistent TCP connections open, one connection per remote device. The user will be able to select a task to execute on a particular device that we have a connection open to, and get back from the application real-time updates as to the progress or results of the execution of that task. In certain cases, the length of the task is infinite; it will keep executing forever and sending back results to my application which will update its display of the results every second that ticks by until the user STOPS that particular task.
    This can be done simply using async I/O in the main runloop, sure. But if I were going to thread this so that I could be processing the results I've received back from one *or more* remote devices while also doing something else, given that I will only have one (persistent) connection open to any given remote device that I'm interacting with (that is to say, I won't be opening up a separate TCP session for every single task I want to execute on a single device simultaneously), it makes sense _to me_ to implement this as I've described: with every connection to each remote device getting its own thread that lasts for the lifetime of the TCP session (which could be the entire time the application is running, times however many devices the user wishes to be connected to while in the app). I won't be spawning a new thread for every task the user wishes to ask a remote device to do.
    This is why (I think) I need bi-directional messaging between the main thread and each of these threads dedicated to a given remote device that we have an active session with/connection to. The main thread needs to be able to tell remote device X (which already has a running thread dedicated to it) to do task A, and then get real-time feedback from that remote device so that the main thread can be displaying it to the user as it is coming back. Same with remote device Y running task B, simultaneously. At any time during the execution of these tasks, the user needs to be able to tell my app to stop one of these tasks, and the main thread needs to send that message to one of the remote devices via that device's dedicated thread.
    This is why I am talking about this in terms of the "actor model," and not the "worker thread model," because the former model seems to fit what I want to do.
    -- Nathan

  • Research Agency Representative/Company Needed for Consulting Opportunity

    DreamKraft, Inc. is looking for representatives for our
    technology & products to the Government and Industrial sectors.  We are developing a revolutionary AI
    technology that can learn in real-time, provide Pavlovian style classical
    conditioning, asynchronous networks and work in the temporal and spatial
    domains.  Requirements for our
    representative(s) can be met by the profile below. 
    Have
    experience in and work in one or more of the following areas;
    Computer
    Science
    Cognitive
    Science
    Neurotechnology
    Intelligence
    Analysts
    Accelerated
    Learning
    Intelligent
    Agents
    Robotics
    Machine
    Learning
    Vision
    Systems
    Geospatial
    Representation And Analysis
    Common-Sense
    Reasoning
    Have
    experience in DARPA, NASA, or NSF (or others) grant submittals, plus;
    Be
    interested in assisting in the development of SBIR Phase I and Phase II
    applications for research areas matching the above list.  Work responsibility can be as little
    as review & comment or as much as general authorship.
    Provide
    assistance with the development of the focus area (we have many
    application areas available to us with our technology).  Also, need help in decision process on
    where to focus research.
    Help
    connect our technology to the needs of the institutions and resolve the
    business needs
    Have
    current connections within one or more of these agencies.
    Have a
    desire and interest in taking on a new technology
    Looking
    for 10+ years of experience. 
    Will
    work under finders-fee or equitable commissions contract.
    For additional information go to http://www.dreamkraftsolutions.com.  Interested parties should submit a letter or
    resume highlighting your experience and interest in these matters to
    [email protected]
    DreamKraft can provide reference documents for
    your review if you desire additional information. Please request via email and
    they will be sent to you immediately.

    Hi,
    This is Arijit . I wish to apply for this position. Please find my attached CV.
    Regards,
    Arijit
    Attachments:
    Resume.docx ‏27 KB

  • Remove init.d debian script for AUR package

    I would like to make a new package for HQplayer network audio daemon.
    I have made this PKGBUILD (where init.d is removed from debian package and a new systemd service is added).
    Is this correct?
    pkgname=hqplayer-network-audio-daemon
    _debpkgver=2.0.5
    pkgver=$_debpkgver
    pkgrel=1
    pkgdesc="Signalyst Network Audio Daemon"
    arch=('x86_64')
    url="http://www.signalyst.com/"
    license=('Proprietary')
    depends=('alsa-lib')
    source=("http://www2.signalyst.com/bins/naa/debian_wheezy/networkaudiod_2.0.5-20_i386.deb" '[email protected]')
    sha256sums=('369bc3379b11fb05813567d47278f8f24711bb5240269ec725c8f17adecf1a21' '083a3080512283cf43930ad54749cee14a21bed5fc1596e63cce4482e1aeed96')
    package() {
    cd "$srcdir"
    bsdtar xf data.tar.gz -C "$pkgdir"
    install -Dm644 "[email protected]" \
    "$pkgdir/usr/lib/systemd/system/[email protected]"
    rm -r "$pkgdir/etc/init.d"

    Sorry but it is not an "opaque binary from an unknown source": network audio daemon is made by Jussi Laako, a very well known expert in audio digital conversion, known on the net by "miska" (see the posts at computeraudiophile.com for example).
    And yes, it is working very well. HQplayer play an audio file in one computer and  network audio daemon reproduce it in another.  There is a version of HQplayer for linux that will work for 30 minutes without buying the licence.
    I will make a package also of HQplayer as soon as possible, since the network daemon will not work without it
    For the licence I guess that I could change to 'unknown'
    Here is a copy of debian control file:
    Package: networkaudiod
    Version: 2.0.5-20
    Architecture: i386
    Maintainer: Jussi Laako <[email protected]>
    Installed-Size: 319
    Pre-Depends: debconf
    Depends: libasound2 (>= 1.0.16), libc6 (>= 2.4), libgcc1 (>= 1:4.1.1), libstdc++6 (>= 4.1.1), debconf (>= 0.5) | debconf-2.0
    Priority: extra
    Homepage: http://www.signalyst.com/consumer.html
    Description: Signalyst Network Audio Daemon
    Signalyst Network Audio Daemon is a light weight server for asynchronous
    network audio stream playback. It is an implementation of Signalyst
    Network Audio Adapter protocol.
    Last edited by hifi25nl (2014-06-19 08:11:26)

  • Rv042 vpn error to connect

    Hello  all
    at this moment i'm try to connect 2 router rv042 and i recevide the follow error  message
    (g2gips0) #23: ERROR: asynchronous network error report on eth1 for message to 190.199.164.144 port 500, complainant 190.199.164.144: Connection refused [errno 146, origin ICMP type 3 code 3 (not authenticated)]
    in the other router i don't see any error
    what wuld by the problem
    thanks for your support
    Regards,
    Daniel

    thanks so much for you response.
    Below you can see the tunnel configuration
    i check my isp and we don't have firewall and the log file on the other router are
    Sep 6 13:59:30 2011
    VPN Log
    packet from 190.39.199.24:500: received Vendor ID payload [Dead Peer Detection]
    Sep 6 13:59:30 2011
    VPN Log
    packet from 190.39.199.24:500: received Vendor ID payload [Dead Peer Detection]
    Sep 6 13:59:30 2011
    VPN Log
    packet from 190.39.199.24:500: [Tunnel Negotiation Info] <<< Responder Received Main Mode 1st packet
    Sep 6 13:59:30 2011
    VPN Log
    packet from 190.39.199.24:500: [Tunnel Negotiation Info] <<< Responder Received Main Mode 1st packet
    Sep 6 13:59:30 2011
    VPN Log
    packet from 190.39.199.24:500: [Max][Max][Max] isa_rcookie
    Sep 6 13:59:30 2011
    VPN Log
    packet from 190.39.199.24:500: [Max][Max][Max] isa_rcookie
    thanks so much for your help
    Regards,

  • DISPATCHER 의 TRACE

    제품 : ORACLE SERVER
    작성날짜 : 2004-07-21
    DISPATCHER 의 TRACE
    ===================
    PURPOSE
    Explanation
    MTS 를 사용 시 다음의 2 가지 message 를 이용하여 그 상태를 점검할 수 있다.
    - Network messages
    - virtual circuit messages.
    Network messages 는 client and the dispatcher process 간에 교환되는
    message 이다.
    또 virtual circuit messages 는 dispatchers 와 shared server 간에 교환
    된다.
    dispatcher process 는 asynchronous 하게 network messages를 virtual
    circuit messages 로 virtual circuit messages 를 network messages 로 변환
    한다.
    이 messages를 trace 하기위해 다음의 두 event 가 사용되어진다
    10248 - network messages를 trace
    어느정도까지 자세하게 뜰것인가는 다음의 level에 의해 결정된다
    level 1: log unexpected TNS errors on client connections
    level 2: log listener interaction and all network message traffic
    level 3: log all failed to get buffer errors
    level 4: log connection polling
    level 5: log break/reset handling
    level > = 6: log outbound connection request
    level > 9: log async callbacks
    10249 - virtual circuit messages 를 trace.
    이를 위해 두 level 이 있다
    level <= 9: log all virtual circuit message traffic
    level > 9 : also log state objects whenever a circuit is
    closed/deleted
    다음의 두 events 는 debugging 목적으로 사용된다:
    10257 - trace shared server load balancing
    level > 0: log all starts/stops/deaths of shared servers
    level > 2: log load balancing parameters and control changes
    level > 9: log every load balancing calculation
    10258 - force shared servers to be used circularly.
    예를 들어 만약 5개의 shared server가 있고, (S001) 이 처음에 사용되고,
    그 이후 S002, S003,S004, S005, 가 사용된 이후 다시 S001 이 사용되는 loop
    형식이라면 이는 session과 UGA 가 switching 되는 stress test 에 이용되어질수
    있다.
    Event 10248 : 오직 dispatcher의 trace file .
    Event 10249 : dispatcher의 trace file 뿐만 아니라, shared server의
    trace file.
    Event 10257 : PMON의 trace file.
    일반적으로 10248 and 10249 의 유용한 level 은 9 이다.
    10248 을 사용시 높은 level 을 지정하는 것은 매번 async callback 이 fire
    되어 (SiG10) performance 를 떨어뜨리고, system을 hang 상태에 빠뜨리므로
    주의하여야 한다.
    또한 10257 을 9 보다 크게 하면 매 3초마다 1 번씩 계산을 하여 tace file 을
    빨리 채우게 되므로 이또한 주의하여야 한다.
    Example
    Reference Document
    <Note:1015176.4>

    did you figure out your problem?  We are getting the same error for certain transmissions.
    [Thr 12] Thu Feb 23 11:32:17 2006
    [Thr 12] *** ERROR => no valid destination server available for '!J2EE'
    rc=13 [http_route_mt.c 2350]
    [Thr 12] *** WARNING => redirect failed request to foreign destination
    '!ALL' [http_route_m 2369]
    [Thr 12] *** WARNING => original destination was '!J2EE' [http_route_m
    2372]
    I am thinking I need something for the redirect to work since the URL is not a /sap address.
    Dede

  • Datagurad configuration

    Hi Gurus,
    I can configured dataguard in high performance and high availability mode. but when i am trying to configure in high protection mode it is giving end of the file communication.
    and alter log is saying
    Destination log_archive_dest_2 is using asynchronous network I/O
    Destination log_archive_dest_1 is not serviced by LGWR
    ora-16072: a minimum of one standby database destination is required.
    I followed document from [http://www.orafaq.com/node/2030] exactly. but i am failing.
    Please help me in configuring in high protection mode.
    Thank you a lot...

    In my database there are 3 redo log groups and each datafile in that having 50m.
    alter database add standby logfile group 4 size 50m;
    alter database add standby logfile group 5 size 50m;
    alter database add standby logfile group 6 size 50m;these logfiles added on primary side and copied to standby side.
    on standby side
    select group#, thread#, status, archived from v$standby_log;group# thread# status arc
    4 1 unassigned no
    5 1 unassigned no
    6 0 unassigned yes
    Edited by: 863784 on Jun 29, 2011 4:44 AM

  • Network buffer used by Data Guard asynchronous shipping process

    Hi, all,
    I am investigating the amount data that could be loss if we are using LGWR ASYNC for the redo transport services. I read somewhere it says the maximum exposure to data loss is the size of network buffer used by Primary database to ship redo apply. Where can I find out the size of this network buffer?
    Thanks a lot in advance.

    it says the maximum exposure to data loss is the size of network buffer used by Primary databaseIn 10.2 lns async reads directly from online log files, no buffer.
    However, even with the buffer the above statement is incorrect.
    There is no maximum to the exposure of data loss in either max performance or even max availability modes.
    The exposure is a quantitative measure that depends on the speed of communication with standby.
    You can evaluate it by comparing the rate of redo generation on primary ('redo blocks written' in v$sysstat) with that of redo apply on standby ('redo blocks read for recovery' in v$sysstat), or, easier, v$dataguard_stats on standby.
    Oracle dataguard software sometimes [log switch] artificially increases immediate short-term exposure by parallelizing redo shipping.
    But this parallelization makes it more efficient (and thus lessens this exposure) in the long run.
    The only mode with maximum exposure limit is maximum protection, and that maximum is zero.

  • JRE freeze when loading applet twice, through VSAT network

    Here is a good one for you guys I think ...
    ===========
    What I got:
    ===========
    I have a java web application, runing with Tomcat 5.5.
    I use a Apache HTTP Server 2.0.52 for my statiques ressources (html, etc ...), and the modjk connector 1.2.13 to forward all the dynamic requests from the client to the application server.
    One of my html pages contains a signed java applet.
    Basically, this applet control a scanner and send the scanned image to the web application server.
    This applet:
    - use some swing components
    - use the netscape.javascript.JSObject to call javascript functions
    - use the morena API (which include a native library) in order to control a TWAIN scanner
    - format the scanned image into a JPEG image
    - send the formatted image to the web server, using an HttpURLConnection
    (I use a servlet on server side to get the uploaded image)
    - wait for the server response, that tells my applet if the upload has been successfull or not
    Some additional infos:
    - I use morena 6.2.0.0
    - I use JRE 1.5.0.0.1 to run the applet
    - JRE on client side is configured as follow:
    - no applet caching
    - network parameters: "use the browser parameters"
    ==============
    My problem is:
    ==============
    - Through a LAN network, the applet works perfectly ...
    - Through an internet network (I use a VSAT / IDIRECT network), I can load and run my applet the first time
    but when I try to run my applet for the second time (without closing the browser), it just doesn't start, and the JRE crash
    (i.e. the java console freeze ..., just like if it was waiting for something ...)
    nothing happen after that, and I have to kill my JRE / Browser
    the funny stuff about it is that the applet works fine (even through VSAT network) when I don't upload the scanned image on the server
    load and run ok as many time as I want ...
    => seems that something's going wrong during the uploading process
    ==========================
    What I have already tried:
    ==========================
    1/ getting rid of the Java - Javascript communication (JSObject seems to have heaps of bugs ...)
    => no changes
    2/ be careful to close correctly my HttpURLConnection, with a HttpURLConnection.disconnect()
    => no changes
    3/ put the morena jars directly on the client side (in the lib/ext directory of the JRE):
    the morena API use a native library, and apparently, a native library can not be loaded by 2 different ClassLoader
    just to avoid any "java.lang.UnsatisfiedLinkError"
    as shown on http://forum.java.sun.com/thread.jspa?forumID=31&threadID=628889
    => no changes
    4/ have a closer look on the http apache server, just to get rid of the error
    "OS 64)The specified network name is no longer available. : winnt_accept: Asynchronous AcceptEx failed."
    as shown on the bug 21425 in http://issues.apache.org/bugzilla/show_bug.cgi?id=21425
    => no changes
    5/ use the upgrade version 1.5.0.6 of the JRE
    => no changes
    ==========
    ANY HELP ?
    ==========
    and as usual, I had to fix this problem for yesterday ... :)))
    Any ideas about that ?
    need more infos ?: just let me know
    ======================================================================================
    Here is the piece of code I use to upload the image from the client to the web server:
    ======================================================================================
    * Upload de cette image sur le serveur, apr�s passage au format JPEG
    * @param imageSelectionnee BufferedImage image � transf�rer
    * @throws ComposantNumerisationException exception pouvant etre lev� lors de l'upload
    public void uploadImage(BufferedImage imageSelectionnee)
        throws ComposantNumerisationException {
        // connexion http au server
        HttpURLConnection connexionServer = null;
        // flux de sortie, permettant d'envoyer les donn�es vers le serveur
        OutputStream fluxSortie = null;
        // parametres pour le libelle de l'exception
        ParametresProprietes parametres = null;
        // flux d'entr�e, pour lire la r�ponse du serveur
        BufferedReader fluxEntree = null;
        // r�ponse du serveur
        String reponseServeur = null;
        // image au format JPEG
        BufferedImage imageFormatJPEG = null;
        try {
            /* conversion de l'image au format JPEG */
            imageFormatJPEG = this.formatterImage(imageSelectionnee);
            /* ouverture d'une connexion vers le serveur */
            connexionServer = this.ouvrirConnexion(imageFormatJPEG);
            /* ecriture des donn�es dans le flux de sortie, vers le serveur */
            // cr�ation d'un outputStream
            fluxSortie = connexionServer.getOutputStream();
            // transfert des donn�es vers le serveur
            ImageIO.write(imageFormatJPEG, Constantes.TYPE_IMAGE, fluxSortie);
            fluxSortie.flush();
            /* lecture de la r�ponse du serveur */
            // cr�ation d'un flux de lecture sur le flux d'entr�e
            fluxEntree = new BufferedReader(new InputStreamReader(
                                                connexionServer.getInputStream()));
            // lecture de la r�ponse du serveur
            reponseServeur = fluxEntree.readLine();
            // v�rification du succes de l'upload, en fonction de la r�ponse du serveur
            if (!reponseServeur.startsWith("REPONSE")) {
                /* cas ou le message retour ne commence pas par "REPONSE":
                 * ce n'est pas la r�ponse de la servlet
                 *  => Tomcat nous a redirig� vers la page d'authentification */
                fenetreNumerisation.redirigerFenetreAuthentification();
            } else if (reponseServeur.compareTo("REPONSE:OK") != 0) {
                // la r�ponse du serveur indique qu'il y a eu un probl�me lors de l'upload
                throw new IOException(reponseServeur);
        } catch (IOException e) {
            // cr�ation des parametres pour ce libelle d'erreurs
            parametres = new ParametresProprietes();
            parametres.ajouterParametre("0", e.toString());
            throw new ComposantNumerisationException(
                    proprietes.getPropriete("ERREUR_UPLOAD", null),
                    proprietes.getPropriete("ERREUR_UPLOAD_TECH", parametres),
                    ComposantNumerisationException.ERREUR_NON_BLOCANTE);
        } finally {
            try {
                // fermeture de ce flux de sortie
                if (null != fluxSortie) {
                    fluxSortie.close();
                // fermeture du flux de lecture de la reponse
                if (null != fluxEntree) {
                    fluxEntree.close();
            } catch (IOException e) {
            // fermeture de la connexion
            if (null != connexionServer) {
                connexionServer.disconnect();
    * Ouverture d'une connexion vers la servlet d'upload de l'image
    * @param image BufferedImage image � transf�rer
    * @return HttpURLConnection une connexion http
    * @throws IOException exception IO
    * @throws ComposantNumerisationException exception
    private HttpURLConnection ouvrirConnexion(BufferedImage image)
        throws IOException, ComposantNumerisationException {
        // url du server
        URL urlServer = null;
        // connexion http au server
        HttpURLConnection connexionServer = null;
        // signature
        String signature = null;
        // g�n�ration de la signature de l'image � transf�rer
        signature = this.genererSignatureImage(image);
        // construction de l'url du serveur � appeler pour cet upload
        // en incluant un parametre pour transmettre la signature de l'image � transf�rer
        // + identifiant du passeport d'urgence courant
        urlServer = new URL(this.urlServeur + this.action +
                            "?" + Constantes.PARAM_SIGNATURE_IMAGE + "=" + signature +
                            "&" + Constantes.PARAM_IDDEMANDE + "=" + idDemande +
                            "&" + Constantes.PARAM_CODEMAJ + "=" + codeMaj +
                            "&" + Constantes.PARAM_TYPEDEMANDE + "=" + typeDemande);
        if (null == urlServer) {
            throw new IOException(proprietes.getPropriete(
                                "ERREUR_UPLOAD_CREATION_URL_SERVEUR", null));
        // ouverture d'une connexion http, gr�ce a cette url du server
        connexionServer = (HttpURLConnection) urlServer.openConnection();
        if (null == connexionServer) {
            throw new IOException(proprietes.getPropriete(
                    "ERREUR_UPLOAD_OUVERTURE_CONNEXION_SERVEUR", null));
        // param�trage de cette connexion
        // m�thode de transmission = POST
        connexionServer.setRequestMethod("POST");
        // autorisation de lire les donn�es venant du serveur
        connexionServer.setDoInput(true);
        // autorisation d'�crire des donn�es vers le serveur                         
        connexionServer.setDoOutput(true);
        // pas d'utilisation de caches
        connexionServer.setUseCaches(false);
        connexionServer.setDefaultUseCaches(false);
        // sp�cification du type des donn�es que l'on envoie vers le serveur
        connexionServer.setRequestProperty("content-type", "img/jpeg");
        return connexionServer;
    }=======================================================================================
    Here is the piece of code I use on server side to get the scaned image from the client:
    =======================================================================================
    * Lecture des donn�es en provenance de l'applet
    * @param request HttpServletRequest
    * @return ByteArrayOutputStream buffer contenant les donn�es lues
    * @throws TechnicalException exception
    * @throws FunctionalException si erreur fonctionnelle
    private ByteArrayOutputStream lireDonnees(HttpServletRequest request)
        throws FunctionalException, TechnicalException {
        // stream de sortie sur l'image
        ByteArrayOutputStream baos = null;
        // id du passeport d'urgence au format Integer
        // image issue de l'applet
        BufferedImage image = null;
        try {
            /* r�cup�ration de l'image */
            image = ImageIO.read(request.getInputStream());
            if (null == image) {
                logger.error(THIS_CLASS + Libelles.getLibelle("ERR-TEC-16", null));
                throw new TechnicalException(new ErreurVO("ERR-TEC-16",
                        null, "", true, false, false));
        } catch (IllegalArgumentException e) {
            logger.error(THIS_CLASS + Libelles.getLibelle("ERR-TEC-13", null));
            throw new TechnicalException(new ErreurVO("ERR-TEC-13",
                    null, "", true, false, false));
        } catch (IOException e) {
            logger.error(THIS_CLASS + Libelles.getLibelle("ERR-TEC-16", null));
            throw new TechnicalException(new ErreurVO("ERR-TEC-16",
                    null, "", true, false, false));
        return baos;
    * Ecriture de la reponse � envoyer � l'applet
    * @param response HttpServletResponse
    * @param erreur Message d'erreur
    * @throws IOException exception
    private void ecrireReponse(HttpServletResponse response, String erreur) throws IOException {
        // r�ponse � envoyer � l'applet
        String reponseServer = null;
        // flux de reponse
        PrintWriter fluxReponse = null;
        response.setContentType("text/html");
        // construction de la r�ponse � envoyer � l'applet
        if (null == erreur) {
            reponseServer = "REPONSE:OK";
        } else {
            /* cas ou il y a eu une exception lev�e lors de la reception des donn�es */
            reponseServer = "REPONSE:ERREUR:" + erreur;
        if (logger.isDebugEnabled()) {
            logger.debug(THIS_CLASS +
                    "Envoie de la r�ponse � l'applet, indiquant si l'upload s'est bien d�roul�: " +
                    reponseServer);
        //envoie de la r�ponse a l'applet
        fluxReponse = response.getWriter();
        fluxReponse.println(reponseServer);
        fluxReponse.close();
    }==============================================================================
    here is the traces I get when the applet doesn't work, through a VSAT network:
    ==============================================================================
    Java Plug-in 1.5.0_01
    Utilisation de la version JRE 1.5.0_01 Java HotSpot(TM) Client VM
    R�pertoire d'accueil de l'utilisateur = C:\Documents and Settings\assistw
    network: Chargement de la configuration du proxy d�finie par l'utilisateur ...
    network: Termin�.
    network: Chargement de la configuration du proxy � partir de Netscape Navigator ...
    network: Erreur lors de la lecture du fichier de registre : C:\Documents and Settings\assistw\Application Data\Mozilla\registry.dat
    network: Termin�.
    network: Chargement de la configuration proxy du navigateur ...
    network: Termin�.
    network: Configuration du proxy : Configuration du proxy du navigateur
    basic: Le cache est d�sactiv� par l'utilisateur
    c:   effacer la fen�tre de la console
    f:   finaliser les objets de la file d'attente de finalisation
    g:   lib�rer la m�moire
    h:   afficher ce message d'aide
    l:   vider la liste des chargeurs de classes
    m:   imprimer le relev� d'utilisation de la m�moire
    o:   d�clencher la consignation
    p:   recharger la configuration du proxy
    q:   masquer la console
    r:   recharger la configuration des politiques
    s:   vider les propri�t�s syst�me et d�ploiement
    t:   vider la liste des threads
    v:   vider la pile des threads
    x:   effacer le cache de chargeurs de classes
    0-5: fixer le niveau de tra�age � <n>
    basic: R�cepteur de modalit�s enregistr�
    basic: R�f�rence au chargeur de classes : sun.plugin.ClassLoaderInfo@b30913, refcount=1
    basic: R�cepteur de progression ajout� : sun.plugin.util.GrayBoxPainter@77eaf8
    basic: Chargement de l'applet...
    basic: Initialisation de l'applet...
    basic: D�marrage de l'applet...
    network: Connexion de http://rma_phileas/Client/html/composants/scanner/SAppletNumerisation.jar avec proxy=DIRECT
    network: Connexion http://rma_phileas/Client/html/composants/scanner/SAppletNumerisation.jar avec cookie ":::langueSettings:::=FR; :::menuSettings_gabaritMaquette:::=%3CSETTINGS%3E%3CVERSION%3EVersion%201.2-Utilisateur%3C/VERSION%3E%3CINDEX_ITEM1%3E0%3C/INDEX_ITEM1%3E%3CINDEX_ITEM2%3E0%3C/INDEX_ITEM2%3E%3CINDEX_ITEM3%3Enull%3C/INDEX_ITEM3%3E%3C/SETTINGS%3E; JSESSIONID=D064486FD6C7CC17E7B256B66965FFEE"
    security: Acc�s aux cl�s et au certificat dans le profil utilisateur Mozilla : null
    security: Chargement des certificats AC racine depuis C:\PROGRA~1\Java\JRE15~1.0_0\lib\security\cacerts
    security: Certificats AC racine charg�s depuis C:\PROGRA~1\Java\JRE15~1.0_0\lib\security\cacerts
    security: Chargement des certificats JPI depuis C:\Documents and Settings\assistw\Application Data\Sun\Java\Deployment\security\trusted.certs
    security: Certificats JPI charg�s depuis C:\Documents and Settings\assistw\Application Data\Sun\Java\Deployment\security\trusted.certs
    security: Chargement des certificats JPI depuis C:\PROGRA~1\Java\JRE15~1.0_0\lib\security\trusted.certs
    security: Certificats JPI charg�s depuis C:\PROGRA~1\Java\JRE15~1.0_0\lib\security\trusted.certs
    security: Chargement des certificats depuis la zone de stockage des certificats de session JPI
    security: Certificats charg�s depuis la zone de stockage des certificats de session JPI
    security: Recherche du certificat dans le magasin de certificats permanent JPI
    security: Recherche du certificat dans la zone de stockage des certificats de session JPI
    security: Obtenir l'objet de stockage des cl�s de la zone de stockage des certificats AC racine
    security: Obtenir l'objet de stockage des cl�s de la zone de stockage des certificats AC racine
    security: Recherche du certificat dans la zone de stockage des certificats AC racine
    security: D�terminer si le certificat peut �tre v�rifi� � l'aide des certificats de la zone de stockage des certificats AC racine
    ... [check certifications]
    sun.misc.Launcher$ExtClassLoader@92e78c
    <no principals>
    java.security.Permissions@157b46f (
    (java.lang.RuntimePermission stopThread)
    (java.security.AllPermission <all permissions> <all actions>)
    (java.io.FilePermission \C:\Program Files\Java\jre1.5.0_01\lib\ext\sunjce_provider.jar read)
    (java.util.PropertyPermission java.version read)
    (java.util.PropertyPermission java.vm.name read)
    (java.util.PropertyPermission java.vm.vendor read)
    (java.util.PropertyPermission os.name read)
    (java.util.PropertyPermission java.vendor.url read)
    (java.util.PropertyPermission java.vm.specification.vendor read)
    (java.util.PropertyPermission java.specification.vendor read)
    (java.util.PropertyPermission os.version read)
    (java.util.PropertyPermission java.specification.name read)
    (java.util.PropertyPermission java.class.version read)
    (java.util.PropertyPermission file.separator read)
    (java.util.PropertyPermission java.vm.version read)
    (java.util.PropertyPermission os.arch read)
    (java.util.PropertyPermission java.vm.specification.name read)
    (java.util.PropertyPermission java.vm.specification.version read)
    (java.util.PropertyPermission java.specification.version read)
    (java.util.PropertyPermission java.vendor read)
    (java.util.PropertyPermission path.separator read)
    (java.util.PropertyPermission line.separator read)
    (java.net.SocketPermission localhost:1024- listen,resolve)
    ... [check certifications]
    security: La v�rification du certificat � l'aide des certificats AC racine a �chou�
    security: Aucune information d'horodatage disponible
    basic: Modalit� empil�e
    basic: Modalit� d�sempil�e
    basic: Utilisateur s�lectionn� : 0
    security: L'utilisateur a accord� les droits d'acc�s au code pour cette session seulement
    security: Ajout du certificat dans la zone de stockage des certificats de session JPI
    security: Certificat ajout� dans la zone de stockage des certificats de session JPI
    security: Enregistrement des certificats dans la zone de stockage des certificats de session JPI
    security: Certificats enregistr�s dans la zone de stockage des certificats de session JPI
    ... [check certifications]
    sun.plugin.security.PluginClassLoader@10fe2b9
    <no principals>
    java.security.Permissions@fe315d (
    (java.lang.RuntimePermission accessClassInPackage.sun.audio)
    (java.lang.RuntimePermission stopThread)
    (java.security.AllPermission <all permissions> <all actions>)
    (java.util.PropertyPermission java.version read)
    (java.util.PropertyPermission java.vm.name read)
    (java.util.PropertyPermission javaplugin.version read)
    (java.util.PropertyPermission java.vm.vendor read)
    (java.util.PropertyPermission os.name read)
    (java.util.PropertyPermission java.vendor.url read)
    (java.util.PropertyPermission java.vm.specification.vendor read)
    (java.util.PropertyPermission java.specification.vendor read)
    (java.util.PropertyPermission os.version read)
    (java.util.PropertyPermission browser.vendor read)
    (java.util.PropertyPermission java.specification.name read)
    (java.util.PropertyPermission java.class.version read)
    (java.util.PropertyPermission file.separator read)
    (java.util.PropertyPermission browser.version read)
    (java.util.PropertyPermission java.vm.version read)
    (java.util.PropertyPermission os.arch read)
    (java.util.PropertyPermission browser read)
    (java.util.PropertyPermission java.vm.specification.name read)
    (java.util.PropertyPermission java.vm.specification.version read)
    (java.util.PropertyPermission java.specification.version read)
    (java.util.PropertyPermission java.vendor read)
    (java.util.PropertyPermission path.separator read)
    (java.util.PropertyPermission http.agent read)
    (java.util.PropertyPermission line.separator read)
    (java.net.SocketPermission rma_phileas connect,accept,resolve)
    (java.net.SocketPermission localhost:1024- listen,resolve)
    ... [check certifications]
    sun.misc.Launcher$ExtClassLoader@92e78c
    <no principals>
    java.security.Permissions@bd09e8 (
    (java.lang.RuntimePermission stopThread)
    (java.security.AllPermission <all permissions> <all actions>)
    (java.io.FilePermission \C:\Program Files\Java\jre1.5.0_01\lib\ext\Smorena.jar read)
    (java.util.PropertyPermission java.version read)
    (java.util.PropertyPermission java.vm.name read)
    (java.util.PropertyPermission java.vm.vendor read)
    (java.util.PropertyPermission os.name read)
    (java.util.PropertyPermission java.vendor.url read)
    (java.util.PropertyPermission java.vm.specification.vendor read)
    (java.util.PropertyPermission java.specification.vendor read)
    (java.util.PropertyPermission os.version read)
    (java.util.PropertyPermission java.specification.name read)
    (java.util.PropertyPermission java.class.version read)
    (java.util.PropertyPermission file.separator read)
    (java.util.PropertyPermission java.vm.version read)
    (java.util.PropertyPermission os.arch read)
    (java.util.PropertyPermission java.vm.specification.name read)
    (java.util.PropertyPermission java.vm.specification.version read)
    (java.util.PropertyPermission java.specification.version read)
    (java.util.PropertyPermission java.vendor read)
    (java.util.PropertyPermission path.separator read)
    (java.util.PropertyPermission line.separator read)
    (java.net.SocketPermission localhost:1024- listen,resolve)
    scl:
    Morena - Image Acquisition Framework version 6.2.0.0.
    Copyright (c) Gnome s.r.o. 1999-2004. All rights reserved.
    Licensed to "XXX".
    network: Connexion de http://rma_phileas/Client/html/composants/scanner/META-INF/services/javax.imageio.spi.ImageInputStreamSpi avec proxy=DIRECT
    network: Connexion http://rma_phileas/Client/html/composants/scanner/META-INF/services/javax.imageio.spi.ImageInputStreamSpi avec cookie ":::langueSettings:::=FR; :::menuSettings_gabaritMaquette:::=%3CSETTINGS%3E%3CVERSION%3EVersion%201.2-Utilisateur%3C/VERSION%3E%3CINDEX_ITEM1%3E0%3C/INDEX_ITEM1%3E%3CINDEX_ITEM2%3E0%3C/INDEX_ITEM2%3E%3CINDEX_ITEM3%3Enull%3C/INDEX_ITEM3%3E%3C/SETTINGS%3E; JSESSIONID=D064486FD6C7CC17E7B256B66965FFEE"
    network: Connexion de http://rma_phileas/Client/html/composants/scanner/META-INF/services/javax.imageio.spi.ImageOutputStreamSpi avec proxy=DIRECT
    network: Connexion http://rma_phileas/Client/html/composants/scanner/META-INF/services/javax.imageio.spi.ImageOutputStreamSpi avec cookie ":::langueSettings:::=FR; :::menuSettings_gabaritMaquette:::=%3CSETTINGS%3E%3CVERSION%3EVersion%201.2-Utilisateur%3C/VERSION%3E%3CINDEX_ITEM1%3E0%3C/INDEX_ITEM1%3E%3CINDEX_ITEM2%3E0%3C/INDEX_ITEM2%3E%3CINDEX_ITEM3%3Enull%3C/INDEX_ITEM3%3E%3C/SETTINGS%3E; JSESSIONID=D064486FD6C7CC17E7B256B66965FFEE"
    network: Connexion de http://rma_phileas/Client/html/composants/scanner/META-INF/services/javax.imageio.spi.ImageTranscoderSpi avec proxy=DIRECT
    network: Connexion http://rma_phileas/Client/html/composants/scanner/META-INF/services/javax.imageio.spi.ImageTranscoderSpi avec cookie ":::langueSettings:::=FR; :::menuSettings_gabaritMaquette:::=%3CSETTINGS%3E%3CVERSION%3EVersion%201.2-Utilisateur%3C/VERSION%3E%3CINDEX_ITEM1%3E0%3C/INDEX_ITEM1%3E%3CINDEX_ITEM2%3E0%3C/INDEX_ITEM2%3E%3CINDEX_ITEM3%3Enull%3C/INDEX_ITEM3%3E%3C/SETTINGS%3E; JSESSIONID=D064486FD6C7CC17E7B256B66965FFEE"
    network: Connexion de http://rma_phileas/Client/html/composants/scanner/META-INF/services/javax.imageio.spi.ImageReaderSpi avec proxy=DIRECT
    network: Connexion http://rma_phileas/Client/html/composants/scanner/META-INF/services/javax.imageio.spi.ImageReaderSpi avec cookie ":::langueSettings:::=FR; :::menuSettings_gabaritMaquette:::=%3CSETTINGS%3E%3CVERSION%3EVersion%201.2-Utilisateur%3C/VERSION%3E%3CINDEX_ITEM1%3E0%3C/INDEX_ITEM1%3E%3CINDEX_ITEM2%3E0%3C/INDEX_ITEM2%3E%3CINDEX_ITEM3%3Enull%3C/INDEX_ITEM3%3E%3C/SETTINGS%3E; JSESSIONID=D064486FD6C7CC17E7B256B66965FFEE"
    network: Connexion de http://rma_phileas/Client/html/composants/scanner/META-INF/services/javax.imageio.spi.ImageWriterSpi avec proxy=DIRECT
    network: Connexion http://rma_phileas/Client/html/composants/scanner/META-INF/services/javax.imageio.spi.ImageWriterSpi avec cookie ":::langueSettings:::=FR; :::menuSettings_gabaritMaquette:::=%3CSETTINGS%3E%3CVERSION%3EVersion%201.2-Utilisateur%3C/VERSION%3E%3CINDEX_ITEM1%3E0%3C/INDEX_ITEM1%3E%3CINDEX_ITEM2%3E0%3C/INDEX_ITEM2%3E%3CINDEX_ITEM3%3Enull%3C/INDEX_ITEM3%3E%3C/SETTINGS%3E; JSESSIONID=D064486FD6C7CC17E7B256B66965FFEE"
    network: Connexion de http://rma_phileas/Client/flux/protected/uploadimage.do?signature=c07690c12904320a253cbdeeded59238&idDemande=7&codeMaj=1133967329473&typeDemande=PU avec proxy=DIRECT
    network: Connexion http://rma_phileas/Client/flux/protected/uploadimage.do?signature=c07690c12904320a253cbdeeded59238&idDemande=7&codeMaj=1133967329473&typeDemande=PU avec cookie ":::langueSettings:::=FR; :::menuSettings_gabaritMaquette:::=%3CSETTINGS%3E%3CVERSION%3EVersion%201.2-Utilisateur%3C/VERSION%3E%3CINDEX_ITEM1%3E0%3C/INDEX_ITEM1%3E%3CINDEX_ITEM2%3E0%3C/INDEX_ITEM2%3E%3CINDEX_ITEM3%3Enull%3C/INDEX_ITEM3%3E%3C/SETTINGS%3E; JSESSIONID=D064486FD6C7CC17E7B256B66965FFEE"
    basic: Arr�t de l'applet...
    basic: R�cepteur de progression supprim� : sun.plugin.util.GrayBoxPainter@77eaf8
    basic: Jonction du thread d'applet...
    basic: Destruction de l'applet...
    basic: Elimination de l'applet...
    basic: Sortie de l'applet...
    basic: Thread d'applet joint...
    basic: R�cepteur de modalit�s non enregistr�
    basic: Recherche d'informations...
    basic: Lib�ration du chargeur de classes : sun.plugin.ClassLoaderInfo@b30913, refcount=0
    basic: Mise en cache du chargeur de classes : sun.plugin.ClassLoaderInfo@b30913
    basic: Taille de cache du chargeur de classes courant : 1
    basic: Termin�...
    basic: R�cepteur de modalit�s enregistr�
    basic: R�f�rence au chargeur de classes : sun.plugin.ClassLoaderInfo@b30913, refcount=1
    basic: R�cepteur de progression ajout� : sun.plugin.util.GrayBoxPainter@1e16483
    basic: Chargement de l'applet...
    basic: Initialisation de l'applet...
    basic: D�marrage de l'applet...
    network: Connexion de http://rma_phileas/Client/html/composants/scanner/SAppletNumerisation.jar avec proxy=DIRECT
    network: Connexion http://rma_phileas/Client/html/composants/scanner/SAppletNumerisation.jar avec cookie ":::langueSettings:::=FR; :::menuSettings_gabaritMaquette:::=%3CSETTINGS%3E%3CVERSION%3EVersion%201.2-Utilisateur%3C/VERSION%3E%3CINDEX_ITEM1%3E0%3C/INDEX_ITEM1%3E%3CINDEX_ITEM2%3E0%3C/INDEX_ITEM2%3E%3CINDEX_ITEM3%3Enull%3C/INDEX_ITEM3%3E%3C/SETTINGS%3E; JSESSIONID=D064486FD6C7CC17E7B256B66965FFEE"

    A workaround would be: don't use IE9. You want a solution, not a workaround.
    I think at this juncture you are best of creating a new bug report and be sure to reference the old closed one. It doesn't look entirely related though, your symptoms are different from what is described in it (freeze VS a crash). You tried this on several systems right? Also on machines on a different network?
    http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7072601

  • Copy file from C drive to my network drive

    Hello to All,
    I am trying to copy some files from my C drive to the Network i.e. M drive.
    Using Oracle forms 10g AS on a UNIX box.
    This code works fine:
    :blk_global_items.file_load_from := 'c:\temp\0310011.ffs';
    :blk_global_items.file_load_to := 'C:\temp\logs\0310011.ffs';
    IF NOT webutil_file_transfer.client_to_as(
         clientFile => :blk_global_items.file_load_from,
         serverFile => :blk_global_items.file_load_to,
         asynchronous => TRUE,
         callbacktrigger => null) THEN
         message('Upload was not successfull');
    ELSE
         message('Upload was successfull');
    END IF;
    But not this code:
    :blk_global_items.file_load_from := 'c:\temp\0310011.ffs';
    :blk_global_items.file_load_to := 'M:\group\osc\0310011.ffs';
    IF NOT webutil_file_transfer.client_to_as(
         clientFile => :blk_global_items.file_load_from,
         serverFile => :blk_global_items.file_load_to,
         asynchronous => TRUE,
         callbacktrigger => null) THEN
         message('Upload was not successfull');
    ELSE
         message('Upload was successfull');
    END IF;
    I highly appreciate any suggestions.
    Habeeb

    Hi Jan
    The question that comes to my mind is to ask if this project is actually open in Captivate while you are trying to do this. My thought is that if it's still open, perhaps Captivate has a connection and something about the process of copying the file is causing something in the process to gag.
    Cheers... Rick
    Helpful and Handy Links
    Captivate Wish Form/Bug Reporting Form
    Adobe Certified Captivate Training
    SorcerStone Blog
    Captivate eBooks

  • How can I run a custom program ASYNCHRONOUSLY when booting WinPE?

    I have a custom application that I want to have running during WinPE for my Litetouch deployments. I had this working in SCCM and now I want to get it working in MDT.
    I have the Netcheck.exe application in my Extras folder, it ends up on the root of my X: drive.
    Here is my unattend.xml file.
    <?xml version="1.0" encoding="utf-8"?>
    <unattend xmlns="urn:schemas-microsoft-com:unattend">
        <settings pass="windowsPE">
            <component name="Microsoft-Windows-Setup" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State">
                <Display>
                    <ColorDepth>32</ColorDepth>
                    <HorizontalResolution>1024</HorizontalResolution>
                    <RefreshRate>60</RefreshRate>
                    <VerticalResolution>768</VerticalResolution>
                </Display>
    <RunAsynchronous>
    <RunAsynchronousCommand>
    <Order>1</Order>
    <Path>X:\NetCheck.exe</Path>
    <Description>Run the NetCheck app</Description>
    </RunAsynchronousCommand>
    <RunAsynchronousCommand>
    <Order>2</Order>
    <Path>wscript.exe X:\Deploy\Scripts\LiteTouch.wsf</Path>
    <Description>Lite Touch PE</Description>
    </RunAsynchronousCommand>
    </RunAsynchronous>
            </component>
        </settings>
        <cpi:offlineImage cpi:source="" xmlns:cpi="urn:schemas-microsoft-com:cpi" />
    </unattend>
    By default, the Litetouch.wsf file is launched synchronously, and so my Netcheck app won't run until the Litetouch wizard closes (this won't work for my needs). Also, synchronous commands are run before Asynchronous commands.  Therefore, I need to run
    both my custom Netcheck app and the Litetouch wizard Asynchronously.
    However, every time I use the unattend file that I pasted above, WinPE boots and then immediately reboots. If I am quick and hit F8 I get a command prompt, and then my Netcheck app and the Litetouch wizard both run (sweet!), but then when I close that cmd
    prompt, WinPE shuts down (lame).
    The wpeinit.log is shown below. Everything seems to look good, so what is wrong? How can I accomplish this?
    2014-09-09 14:23:02.588, Info      WPEINIT is processing the unattend file [X:\unattend.xml]
    2014-09-09 14:23:02.588, Info      Spent 141ms initializing removable media before unattend search
    2014-09-09 14:23:02.604, Info      ==== Initializing Display Settings ====
    2014-09-09 14:23:02.620, Info      Setting display resolution 1024x768x32@60: 0x00000000
    2014-09-09 14:23:02.620, Info      STATUS: SUCCESS (0x00000000)
    2014-09-09 14:23:02.620, Info      ==== Initializing Computer Name ====
    2014-09-09 14:23:02.620, Info      Generating a random computer name
    2014-09-09 14:23:02.620, Info      No computer name specified, generating a random name.
    2014-09-09 14:23:02.620, Info      Renaming computer to MININT-9KBBIFF.
    2014-09-09 14:23:02.620, Info      Waiting on the profiling mutex handle
    2014-09-09 14:23:02.620, Info      Acquired profiling mutex
    2014-09-09 14:23:02.620, Info      Service winmgmt disable: 0x00000000
    2014-09-09 14:23:02.620, Info      Service winmgmt stop: 0x00000000
    2014-09-09 14:23:02.620, Info      Service winmgmt enable: 0x00000000
    2014-09-09 14:23:02.620, Info      Released profiling mutex
    2014-09-09 14:23:02.620, Info      STATUS: SUCCESS (0x00000000)
    2014-09-09 14:23:02.620, Info      ==== Initializing Virtual Memory Paging File ====
    2014-09-09 14:23:02.620, Info      No WinPE page file setting specified
    2014-09-09 14:23:02.635, Info      STATUS: SUCCESS (0x00000001)
    2014-09-09 14:23:02.635, Info      ==== Initializing Optional Components ====
    2014-09-09 14:23:02.635, Info      WinPE optional component 'Microsoft-WinPE-HTA' is present
    2014-09-09 14:23:02.651, Info      WinPE optional component 'Microsoft-WinPE-MDAC' is present
    2014-09-09 14:23:02.651, Info      WinPE optional component 'Microsoft-WinPE-WMI' is present
    2014-09-09 14:23:02.667, Info      WinPE optional component 'Microsoft-WinPE-WSH' is present
    2014-09-09 14:23:02.682, Info      STATUS: SUCCESS (0x00000000)
    2014-09-09 14:23:02.682, Info      ==== Initializing Network Access and Applying Configuration ====
    2014-09-09 14:23:02.682, Info      No EnableNetwork unattend setting was specified; the default action for this context is to enable networking support.
    2014-09-09 14:23:02.682, Info      Global handle for profiling mutex is non-null
    2014-09-09 14:23:02.682, Info      Waiting on the profiling mutex handle
    2014-09-09 14:23:02.682, Info      Acquired profiling mutex
    2014-09-09 14:23:02.997, Info      Install MS_MSCLIENT: 0x0004a020
    2014-09-09 14:23:02.997, Info      Install MS_NETBIOS: 0x0004a020
    2014-09-09 14:23:03.138, Info      Install MS_SMB: 0x0004a020
    2014-09-09 14:23:03.326, Info      Install MS_TCPIP6: 0x0004a020
    2014-09-09 14:23:03.702, Info      Install MS_TCPIP: 0x0004a020
    2014-09-09 14:23:03.702, Info      Service dhcp start: 0x00000000
    2014-09-09 14:23:03.702, Info      Service lmhosts start: 0x00000000
    2014-09-09 14:23:03.827, Info      Service ikeext start: 0x00000000
    2014-09-09 14:23:03.921, Info      Service mpssvc start: 0x00000000
    2014-09-09 14:23:03.921, Info      Service mrxsmb10 start: 0x00000000
    2014-09-09 14:23:03.921, Info      Released profiling mutex
    2014-09-09 14:23:03.921, Info      Spent 1250ms installing network components
    2014-09-09 14:23:04.108, Info      Installing device root\kdnic X:\windows\INF\kdnic.inf succeeded
    2014-09-09 14:23:04.608, Info      Installing device vmbus\{f8615163-df3e-46c5-913f-f2d2f965ed0e} X:\windows\INF\wnetvsc.inf succeeded
    2014-09-09 14:23:04.670, Info      Spent 750ms installing network drivers
    2014-09-09 14:23:09.768, Info      QueryAdapterStatus: found operational adapter with DHCP address assigned.
    2014-09-09 14:23:09.768, Info      Spent 5062ms confirming network initialization; status 0x00000000
    2014-09-09 14:23:09.768, Info      STATUS: SUCCESS (0x00000000)
    2014-09-09 14:23:09.768, Info      ==== Applying Firewall Settings ====
    2014-09-09 14:23:09.768, Info      STATUS: SUCCESS (0x00000001)
    2014-09-09 14:23:09.768, Info      ==== Executing Synchronous User-Provided Commands ====
    2014-09-09 14:23:09.768, Info      STATUS: SUCCESS (0x00000001)
    2014-09-09 14:23:09.768, Info      ==== Executing Asynchronous User-Provided Commands ====
    2014-09-09 14:23:09.768, Info      Parsing RunAsynchronousCommand: 2 entries
    2014-09-09 14:23:09.768, Info        Command 0: 0x00000000
    2014-09-09 14:23:09.768, Info      Successfully executed command 'X:\NetCheck.exe'
    2014-09-09 14:23:09.768, Info        Command 1: 0x00000000
    2014-09-09 14:23:09.784, Info      Successfully executed command 'wscript.exe X:\Deploy\Scripts\LiteTouch.wsf'
    2014-09-09 14:23:09.784, Info      STATUS: SUCCESS (0x00000000)
    2014-09-09 14:23:09.784, Info      ==== Applying Shutdown Settings ====
    2014-09-09 14:23:09.784, Info      No shutdown setting was specified
    2014-09-09 14:23:09.784, Info      STATUS: SUCCESS (0x00000001)

    Here is how i ended up solving my problem.
    Change the unattend file to look like this:
    <?xml version="1.0" encoding="utf-8"?>
    <unattend xmlns="urn:schemas-microsoft-com:unattend">
    <settings pass="windowsPE">
    <component name="Microsoft-Windows-Setup" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State">
    <Display>
    <ColorDepth>32</ColorDepth>
    <HorizontalResolution>1024</HorizontalResolution>
    <RefreshRate>60</RefreshRate>
    <VerticalResolution>768</VerticalResolution>
    </Display>
    <RunSynchronous>
    <RunSynchronousCommand>
    <Order>1</Order>
    <Path>wscript.exe X:\Deploy.vbs</Path>
    <Description>Run the .vbs file that kicks off Netcheck and the Litetouch wizard</Description>
    </RunSynchronousCommand>
    </RunSynchronous>
    </component>
    </settings>
    <cpi:offlineImage cpi:source="" xmlns:cpi="urn:schemas-microsoft-com:cpi" />
    </unattend>
    Here is the Deploy.vbs:
    Set objShell = Wscript.CreateObject("Wscript.shell")
    objShell.Run "X:\Netcheck.exe", 0, false
    objShell.Run "wscript.exe X:\Deploy\Scripts\LiteTouch.wsf", 0, true

  • Serializin​g read/write operations of network-pu​blished shared variables

    Hi all,
    I'm developing a distributed application (PC + CompactRIO), and using shared variables (SVs) for inter-device communication. Here's my journey so far:
    Intended procedure
    PC parses file
    PC writes processed file data (custom cluster, large) into the 1st SV 
    PC writes a "grab data" signal/command (enum) into the 2nd SV
    cRIO polls the 2nd SV
    cRIO sees the command, then reacts by reading the 1st SV
    Steps #2 and #3 were sequenced, using error wires.
    Unexpected results
    Even after the command is transmitted and the cRIO sees it, the cRIO could not read the data (which I wrote BEFORE the command) -- LabVIEW reported that the buffer was empty.
    The operation succeeded when I placed a wait (5 seconds) between steps #2 and #3.
    Questions
    What am I doing wrong, and how do I achieve my desired outcome?
    Is SV I/O asynchronous by design?
    Is it possible to use event-driven programming to handle SV access? (i.e. does LabVIEW signal when the new SV value has propagated across the network?)

    BillMe wrote:
    Why do you have to "notify" the other end that data is available? The subscriber can simply sit in a loop doing a timed read just as if using a queue or notifier IPC. If it doesn't time out, you got new data. If it does time out, do some other processing if needed and then loop back for another timed read.
    My sytem architecture is command-driven -- the cRIO listens for instructions from the PC interface (sent as an enum via one SV), and performs tasks (motor control) in response. One of the commands (the one described in this thread) happens to be "download a new motion profile from the PC, by reading the other SV". Given that the cRIO is already polling the command channel, I felt that there's no need to also poll the data channel (especially since the "download" command is issued very infrequenty). Plus, I thought that polling two channels would increase the chances of race conditions or illegal state transitions, particularly if the app is developed over a long term.
    I am also new to LabVIEW, so my current programming style will heavily reflect my C++/Qt background while I get a feel for LabVIEW's strengths and weaknesses -- Qt is a heavily event-driven framework (even for networking!), where polling often means you're doing something wrong.
    Still, thank you for pointing out that I can use timeouts to determine if new data has arrived -- my subscriber current writes a null command back into the SV when it has consumed the command, but you showed me that I don't have to.

  • Best way to add new dual band Extreme to existing b/g network

    I've been using a Snow Extreme and b/g Express, but have recently been having dropped/slow connection issues. I think this may be at least partially caused from the many other networks and other wireless devices in the neighborhood - I can see 30 or more networks at times. I've also gotten a new Mini and MacBook, both with n wireless, so I decided to get a new dual band Extreme.
    The faster connection speed of the new Extreme is very noticeable on my n capable machines. It also looks like the connection issues I was previously having may have been resolved, but its a bit early to tell for sure.
    First problem I've had is with setting up the guest network. If I attempt to set it up wirelessly, I get as far as changing the settings and restarting the Extreme. Once I do, it does restart, but then Airport Utility is not able to find it after restart. I am able to see the main and guest network in my available networks, but I am unable to join either. Once I turn guest off (via ethernet since Utility isn't able to see it wirelessly) I am again able to see it in Utility and connect to the main network. If I try to turn on guest via ethernet, I get an error and it does not restart.
    Originally the Snow Extreme was the main and the Express was used for wireless printing. My plan was to use the new dual-band as the main, move the Snow to the printer, and use the Express for AirTunes. But now I realize that I'm only able to print and use Airtunes on the main and not the guest network. Since the Snow and Express are b/g, are they going to slow down the main network? I am seeing these as clients in Airport Utility, which I didn't expect. If so, is there a better way to set this up than what I am attempting to do?
    I've got the radio mode set to 802.11n only (5GHz) - 802.11b/g/n. Am I able to set it up so that the n capable clients use the 5GHz band and the b/g clients use the 2.4GHz band so that they don't slow down the n connection, or would I even want to do this?
    Thanks!!!

    The jre is 14,872 KB (j2re-1_4_2_03-windows-i586-p.exe).
    If you silently install the JRE then then licensing doesn't appear to be an issue (no dialogs appear). See http://java.sun.com/j2se/1.4.2/docs/guide/plugin/developer_guide/silent.html. Silent installation is perfect for us since our customers are very nontechnical and would be very confused about the JRE installation dialogs.
    My main question remains: what is the best way to incorporate the installation of the JRE into an existing product. I solved the above-mentioned error 1500 problem by asynchronously starting the silent JRE installation after my product is installed, i.e., after the InstallFinalize step. This results in a bad human interface: the user is prompted with the final dialog with a "finish" button. However the mouse cursor is showing an hourglass intermittenly (kind of like when you logon to Windows after a reboot), for 25-40 seconds after this dialog first appears, until the JRE is installed. I have got to figure out a way to synchronously install the JRE while the user waits.
    I chose to do a private install (search for "private" in http://java.sun.com/j2se/1.4/pdf/plugin-dev-guide-1.4.2.pdf), which works, but I haven't yet figured out the best way to uninstall this JRE -- it appears that simply deleting the directory tree might be the correct way to uninstall.
    I have searched a lot of newsgroups for the "generally accepted" method to incorporate some Java programs into a product (i.e., how to install the JRE). I have not found anything. My conclusion is that I must be doing something that isn't done that often, either that or I've taken a wrong turn.

  • Large number VSS errors "The specified network resource or device is no longer available."

    I have a 2 node Hyper V Cluster backed up via Veeam Off-Host Proxy. I've already logged, without answer, a thread about the Off-Host Proxy server randomly (I guess) creating new duplicate iSCSI connections.
    Today I have a single VM that won't backup. On inspection through the hosting servers Application Log I see a high amount of VSS errors being logged which I believe is possibly related to the iSCSI issue being logged by the SAN.
    I'm not sure how to "show" the issue without a giant wall of the events but there is like half a dozen different events being logged when whatever this is is happening. For instance as well last night 60/61 VMs backed up find, but these errors
    were logged constantly while the backup ran...
    The question as well is is this a Windows/VSS issue, a Veeam issue or a Equallogic issue?
    Also how do I find what '\\?\Volume{06fba49e-9519-11e4-80cc-000af75dc050}\'. actually is?
    In order of how they come I guess:
    Log Name:      Application
    Source:        VSS
    Date:          6/01/2015 7:28:19 AM
    Event ID:      8229
    Task Category: None
    Level:         Warning
    Keywords:      Classic
    User:          N/A
    Computer:      HOST02.domain.private
    Description:
    A VSS writer has rejected an event with error 0x800423f3, The writer experienced a transient error.  If the backup process is retried,
    the error may not reoccur.
    . Changes that the writer made to the writer components while handling the event will not be available to the requester. Check the event log for related events from the application hosting the VSS writer. 
    Operation:
       PrepareForSnapshot Event
    Context:
       Execution Context: Writer
       Writer Class Id: {66841cd4-6ded-4f4b-8f17-fd23f8ddc3de}
       Writer Name: Microsoft Hyper-V VSS Writer
       Writer Instance ID: {881f5207-f769-4b40-986a-c6bd56d8aa1e}
       Command Line: C:\Windows\system32\vmms.exe
       Process ID: 3268
    Log Name:      Application
    Source:        VSS
    Date:          6/01/2015 7:29:31 AM
    Event ID:      8193
    Task Category: None
    Level:         Error
    Keywords:      Classic
    User:          N/A
    Computer:      HOST02.domain.private
    Description:
    Volume Shadow Copy Service error: Unexpected error calling routine Error calling CreateFile on volume '\\?\Volume{06fba49e-9519-11e4-80cc-000af75dc050}\'.  hr = 0x80070037, The specified network resource or device is no longer available.
    Operation:
       Check If Volume Is Supported by Provider
    Context:
       Execution Context: Coordinator
       Provider ID: {d4689bdf-7b60-4f6e-9afb-2d13c01b12ea}
       Volume Name: \\?\Volume{06fba49e-9519-11e4-80cc-000af75dc050}\
    Log Name:      Application
    Source:        EqualLogic
    Date:          6/01/2015 7:29:43 AM
    Event ID:      4001
    Task Category: VSS
    Level:         Error
    Keywords:      Classic
    User:          N/A
    Computer:      HOST02.domain.private
    Description:
    iSCSI logout error 0xEFFF0040 from target NULL.
    Log Name:      Application
    Source:        VSS
    Date:          6/01/2015 7:29:43 AM
    Event ID:      12293
    Task Category: None
    Level:         Error
    Keywords:      Classic
    User:          N/A
    Computer:      HOST02.domain.private
    Description:
    Volume Shadow Copy Service error: Error calling a routine on a Shadow Copy Provider {d4689bdf-7b60-4f6e-9afb-2d13c01b12ea}. Routine details OnLunStateChange(\\?\mpio#disk&ven_eqlogic&prod_100e-00&rev_7.0_#1&7f6ac24&0&363846433631363644434545463233334146344141353632363038303136#{53f56307-b6bf-11d0-94f2-00a0c91efb8b})
    failed with error 0xefff0040 [hr = 0xefff0040]. 
    Operation:
       Notifying hardware provider to free a drive
       Break with LUN mask
       Delete Shadow Copies
       Processing PostFinalCommitSnapshots
       Executing Asynchronous Operation
    Context:
       Volume Name: \\?\mpio#disk&ven_eqlogic&prod_100e-00&rev_7.0_#1&7f6ac24&0&363846433631363644434545463233334146344141353632363038303136#{53f56307-b6bf-11d0-94f2-00a0c91efb8b}
       Volume Name: \\?\Volume{06fba49e-9519-11e4-80cc-000af75dc050}
       Snapshot ID: {3091377b-2e26-43ed-a11b-f31adbde0b1f}
       Execution Context: Provider
       Provider Name: Dell EqualLogic VSS HW Provider
       Provider Version: 4.7.1
       Provider ID: {d4689bdf-7b60-4f6e-9afb-2d13c01b12ea}
       Snapshot Context: 4194336
       Provider Name: Dell EqualLogic VSS HW Provider
       Provider Version: 4.7.1
       Provider ID: {d4689bdf-7b60-4f6e-9afb-2d13c01b12ea}
       Current State: DoSnapshotSet
    Log Name:      Application
    Source:        VSS
    Date:          6/01/2015 7:29:43 AM
    Event ID:      12293
    Task Category: None
    Level:         Error
    Keywords:      Classic
    User:          N/A
    Computer:      HOST02.domain.private
    Description:
    Volume Shadow Copy Service error: Error calling a routine on a Shadow Copy Provider {d4689bdf-7b60-4f6e-9afb-2d13c01b12ea}. Routine details could not free LUN [hr = 0x8004230f, The shadow copy provider had an unexpected error while trying to process the
    specified operation.
    Operation:
       Break with LUN mask
       Delete Shadow Copies
       Processing PostFinalCommitSnapshots
       Executing Asynchronous Operation
    Context:
       Volume Name: \\?\Volume{06fba49e-9519-11e4-80cc-000af75dc050}
       Snapshot ID: {3091377b-2e26-43ed-a11b-f31adbde0b1f}
       Execution Context: Provider
       Provider Name: Dell EqualLogic VSS HW Provider
       Provider Version: 4.7.1
       Provider ID: {d4689bdf-7b60-4f6e-9afb-2d13c01b12ea}
       Snapshot Context: 4194336
       Provider Name: Dell EqualLogic VSS HW Provider
       Provider Version: 4.7.1
       Provider ID: {d4689bdf-7b60-4f6e-9afb-2d13c01b12ea}
       Current State: DoSnapshotSet
    (Below logged 3 times)
    Log Name:      Application
    Source:        VSS
    Date:          6/01/2015 7:29:49 AM
    Event ID:      8193
    Task Category: None
    Level:         Error
    Keywords:      Classic
    User:          N/A
    Computer:      HOST02.domain.private
    Description:
    Volume Shadow Copy Service error: Unexpected error calling routine Error calling CreateFile on volume '\\?\Volume{06fba49e-9519-11e4-80cc-000af75dc050}\'.  hr = 0x80070037, The specified network resource or device is no longer available.
    Operation:
       Check If Volume Is Supported by Provider
    Context:
       Execution Context: Coordinator
       Provider ID: {d4689bdf-7b60-4f6e-9afb-2d13c01b12ea}
       Volume Name: \\?\Volume{06fba49e-9519-11e4-80cc-000af75dc050}\

    This is the issue having with redundant iSCSI connections being created:
    Not sure this is a Veeam issue, just that it's occurring with Veeam backup process.
    We have a server configured as an Off-Host Proxy with Veeam; it connects to the SAN storage via iSCSI same as the other hosts but accesses the storage as read only.
    Randomly we will get alerts from the SAN as below:
    iSCSI login to target '172.16.0.50:3260, iqn.2001-05.com.equallogic:8-661fc6-e612eedc6-32600005c9254a75-arcvmstore1-2015-01-03-14:13:37.2774.1' from initiator '172.16.0.44:64108, iqn.1991-05.com.microsoft:arcbackproxy.domain.local' failed for the following reason:
    Requested target not found.
    On inspection of the Off-Host Proxy's iSCSI configuration additional iSCSI connections are present as inactive, with an existing connections name amended with the date at the end. For instance (and in the example error above) there will be:
    iqn.2001-05.com.equallogic:8-661fc6-e612eedc6-32600005c9254a75-arcvmstore1
    and
    iqn.2001-05.com.equallogic:8-661fc6-e612eedc6-32600005c9254a75-arcvmstore1-2015-01-03-14:13:37.2774.1
    Not really causing an issue, the backups are running OK, or any issues we have aren't related. But getting annoying getting the alerts from the SAN of the Off-Host Proxy trying to connect to an incorrect iSCSI target.
    Any ideas why this is occurring?
    Obvious is we delete the extra connection, which stops the alert, but the issue will reoccur within a day or two usually.
    Today I found twice the alert as above and sure enough the iSCSI on the Off-Host Proxy is as below:
    Maybe these redunandant connections being created is related? Maybe that's the where the "The specified network resource or device is no longer available." is coming from or something?

Maybe you are looking for