Reachability of an object
Hello,
I have read that the garbage collector may free any object that is unreachable from a root.
The roots are:
- Method local variables in any thread call stack.
- Static variables in any class.
- Special references from JNI.
Suppose you have an object named "myObject" and this object have a method named "myMethod". And suppose that a thread is executing "myMethod".
Are the myObject's instance (no-static) fields reachable?
Is the myObject object reachable?
What's the reasoning behind this?
Thank you
JoseLuis wrote:
But what if the method uses an object X and X is not stored in a local variableNo object is ever stored in a variable in Java. Presumably you mean something like: A method uses a variable V, which refers to an object X, but V is not a local variable.
If that's the case, then V must be a member variable of some object, Y, and if the method is able to get hold of Y's member (ouch!) then Y must be strongly reachable.
of the method but in a field of the object that owns the method? Is X reachable?You mean V is in a field of the object owning the method you mention at the beginning? That's the "current" object, the one we can refer to through "this", and it is always strongly reachable.
But all of this only applies if the garbage collector is a "tracing garbage collector".
Does the Java Language Specification say it should be that way?The JLS doesn't mandate any particular scheme for GC, and in fact, a VM implementation wouldn't have to have any GC at all. The spec just says, "Here are the rules for when objects can be collected. Implement GC however you want, as long as it meets these rules."
I just need to know the rules to say if an object is eligible for collection.They're really quite intuitive, even though the wording that lays them out may be confusing. Pretty much if it makes intuitive sense that an object is reachable, it will be, and vice versa.
Similar Messages
-
Can a unreachable object become reachable again ?
An object becomes eligible for Garbage Collection,when it is not reachable by any instances of the program (is it ?) .So what will happen when the object's finalize() method is invoked and the object performs an operation which causes it to become accessible to reachable objects.
Thank you for your consideration.amtidumpti wrote:
Also what if the object is garbage collected and then in the finally block it is made reachable to other objects.Will a error occur or the object will be assigned a null value ?The assumption of that question is faulty: finalize() will be run before it is actually GCed (i.e. between the moment it becomes unreachable and the moment it is GCed).
If you make it reachable in the finalize() method then it won't be GCed.
Note that this it is a very bad idea to do this, because it messes up some assumptions of the JVM. Nothing that will break the JVM, but it can have severe performance drawbacks.
Generally you shouldn't have a finalize() method at all, because it too can lead to slowdowns: managing objects with a finalize() method takes a lot more work from the JVM than "normal" objects. -
"Cascading" Serialization / Object writing
I skimmed over the relavent area of the Serialization specification (or what I thought to be relavent) and I couldn't find out if Serialization / object writing "cascades" (I only saw it mention this concept with respect to super/subclassing).
For Example:
Say I have an object X which has an ArrayList or Hashtable containing multiple object Y, and each object Y has another ArrayList / Hashtable containing object Z...
Question:
If I call and writeObject on object X, will it write the full contents (in general) of each object Y, and subsequently each object Z (assuming X, Y, and Z all implement Serializable)?Yes. It's right there in [1.1|http://java.sun.com/javase/6/docs/platform/serialization/spec/serial-arch.html#6428]: 'When an object is stored, all of the objects that are reachable from that object are stored as well.'
-
NotSerializable error while trying to write arraylist
I am getting a NotSerializable error while trying to write an arraylist to a file.
Here's the part of the code causing problem
File temp = fileOpenerAndSaver.getSelectedFile(); // fileOpenerAndSaver is a JFileChooser object which has been created and initialized and was already used to select a file with
currentWorkingFile = new File (temp.getAbsolutePath() + ".gd"); // currentWorking file is a file object
try
ObjectOutput output = new ObjectOutputStream (new BufferedOutputStream(new FileOutputStream(currentWorkingFile)));
output.writeObject(nodeList); // <-- This is the line causing problem (it is line 1475 on which exception is thrown)
output.writeObject(edgeList);
output.writeObject(nodesWithSelfLoop);
output.writeObject(nextId);
output.writeUTF(currentMessage);
output.close();
catch (Exception e2)
JOptionPane.showMessageDialog (graphDrawer, "Unknown error writing.", "Error", JOptionPane.ERROR_MESSAGE);
e2.printStackTrace();
} As far as what nodeList is -- it's an arraylist of my own class Node which has been serialized and any object used inside the class has been serialized as well.
Here is the declaration of nodeList:
private ArrayList <Node> nodeList; // ArrayList to hold a list all the nodesLet me show you whats inside the node class:
private class Node implements Serializable
private static final long serialVersionUID = -4625153386839971250L;
/* edgeForThisNodeList holds all the edges that are between this node and another node
* nodesConnected holds all the nodes that are connected (adjacent) to this node
* p holds the top left corner coordinate of this node. The centre. of this node is at (p.x + 5, p.y + 5)
* hasSelfLoop holds whether this node has a self loop.
* **NOTE**: ONLY ONE SELF LOOP IS ALLOWED FOR A NODE.
ArrayList <Edge> edgeForThisNodeList = new ArrayList <Edge> ();
ArrayList <Node> nodesConnected = new ArrayList <Node> ();
Point p;
boolean hasSelfLoop = false;
int index = -1;
BigInteger id;
... some methods following this....
}Here is the edge class
private class Edge implements Serializable
private static final long serialVersionUID = -72868914829743947L;
Node p1, p2; // The two nodes
Line2D line;
* Constructor:
* Assigns nodes provided as appropriate.
* Also calls the addEdge method on each of the two nodes, and passes
* "this" edge and the other node to the nodes, so that
* this edge and the other node can be added to the
* data of the node.
public Edge (Node p1, Node p2)
this.p1 = p1;
this.p2 = p2;
line = new Line2D.Float(p1.p.x+5,p1.p.y+5,p2.p.x+5,p2.p.y+5);
p1.addEdge(this, p2, true);
p2.addEdge(this, p1, false);
}Here is the error I am getting:
java.io.NotSerializableException: javax.swing.plaf.metal.MetalFileChooserUI
at java.io.ObjectOutputStream.writeObject0(Unknown Source)
at java.io.ObjectOutputStream.defaultWriteFields(Unknown Source)
at java.io.ObjectOutputStream.writeSerialData(Unknown Source)
at java.io.ObjectOutputStream.writeOrdinaryObject(Unknown Source)
at java.io.ObjectOutputStream.writeObject0(Unknown Source)
at java.io.ObjectOutputStream.writeOrdinaryObject(Unknown Source)
at java.io.ObjectOutputStream.writeObject0(Unknown Source)
at java.io.ObjectOutputStream.writeObject(Unknown Source)
at MyPanel.save(MyPanel.java:1475)
at GraphDrawer.actionPerformed(GraphDrawer.java:243)
I inentionally did not write the whole error stack because it was way too long and I ran out of characters. But line 1475 is where I do the writeObject call. I also goet some weird not serialized exceptions before on some other classes that are not being written to the file or are not part of the object that I am writing. I serialized those classes and now it's this unknown object that's causing problems.
Edit: The problem may be due to the JFileChooser I am using to select the file as it is a non-serializable object. But I am not trying to write it to the file and in fact am just writing the arrayLists and BigInteger as objects to the file.
Edited by: Cricket_struck on Dec 21, 2009 1:25 PM
Edited by: Cricket_struck on Dec 21, 2009 1:32 PM
Edited by: Cricket_struck on Dec 21, 2009 2:16 PMjava.io.NotSerializableException: javax.swing.plaf.metal.MetalFileChooserUIThat's a Swing component and it is clearly related to the JFileChooser.
I also get some weird not serialized exceptions before on some other classes that are not being written to the file or are not part of the object that I am writing.That's a contradiction in terms. If you get NotSerialzableException it means the objects are being written. So they are reachable from the objects you're writing.
Edit: The problem may be due to the JFileChooser I am using to select the file as it is a non-serializable object.JFileChooser implements Serializable, but you're right, you shouldn't try to serialize it. But clearly this is the current problem. Somewhere you have a reference to it reachable via the object(s) you are serializing.
I suspect that Node and Edge inner classes and that you aren't aware that inner classes contain a hidden reference to their containing class. The solution for serializaition purposes is to make them static nested classes, or outer classes. -
Doubt in makePersistentAll(Collection pcs) method
When a collection is given to a Persistence Manager to persistent, what
is the order in which the objects from this collection are picked up for
persistence. I have 2 objects to be persisted - A warehouse and a district
objects. There is a 1-M relationship between Warehouse and District. The
warehouse shld be added first and then the district as the district
account has a reference to the warehouse. When i add both the objects to
the collection, it always gives me a error sayin no warehouse record
found. Ive tried with both keepin the warehouse as the first or the last
record in the collection.
Can this problem be occuring becuz the warehouse record has not been
committed to the database yet. I cannot make makePersistent() call for
each objects as i have hundreds of objects to be persisteted.
Please advise.
Amol.[email protected] (Amol) writes:
When a collection is given to a Persistence Manager to persistent, what
is the order in which the objects from this collection are picked up for
persistence. I have 2 objects to be persisted - A warehouse and a district
objects. There is a 1-M relationship between Warehouse and District. The
warehouse shld be added first and then the district as the district
account has a reference to the warehouse. When i add both the objects to
the collection, it always gives me a error sayin no warehouse record
found. Ive tried with both keepin the warehouse as the first or the last
record in the collection.Amol,
Could you please post the exception that you are seeing? Also, what
version of Kodo JDO are you using?
As of version 2.2.3, the behavior is as follows: makePersistentAll()
obtains an iterator from the collection passed into the method call, and
loops over that collection in order invoking makePersistent() on each.
The objects are queued for flushing to the data store in the order in
which they were first added to the current transaction. During commit,
PersistenceCapable objects reachable from the objects in the list of
objects made persistent will be made persistent themselves if they are
not already persistent.
Note that we may change this behavior slightly once the final
specification is released, if doing so will facilitate our compliance
with the final spec. In particular, our 1.0-compliant version may add a
reachable object to the transaction when its owning object is made
persistent. This would preserve the ordering as defined in the list
passed to makePersistentAll(), with two exceptions:
- an object that appears late in the list but is reachable from
an object early in the list may end up being persisted just
after the object from which it is reachable, rather than in its
position in the list (current behavior).
- an object that is not in the list passed to makePersistentAll()
but is reachable from an object in the list may be persistent just
after the object from which it is reachable, rather than at the
end of the list (current behavior).
Finally, what is the underlying implementation of the collection that
you are passing to makePersistentAll()? If the collection implementation
that you are using is not ordered, then all bets are off.
-Patrick
Patrick Linskey [email protected]
SolarMetric Inc. http://www.solarmetric.com -
Hi
I need to use:
track 1 ip sla 1 reachability
In my 4507R core switch.
Need to know which IOS should I use for this command as now I am using
cat4500-entservices-mz.122-46.SG.bin
In this when I am using
(config)#track 1 ip ?
route IP route
(no option of sla)HI Majed,
Please find the requested info below:
track ip sla
To track the state of a Cisco IOS IP Service Level Agreements (SLAs) operation and to enter tracking configuration mode, use the track ip sla command in global configuration mode. To remove the tracking, use the no form of this command.
track object-number ip sla operation-number [state | reachability]
no track object-number ip sla operation-number [state | reachability]
Syntax Description
object-number
Object number representing the object to be tracked. The range is from 1 to 1000.
operation-number
Number used for the identification of the IP SLAs operation you are tracking.
state
(Optional) Tracks the operation return code.
reachability
(Optional) Tracks whether the route is reachable.
Command Default
IP SLAs tracking is disabled.
Command Modes
Global configuration (config)
Command History
Release
Modification
12.4(20)T
This command was introduced. This command replaces the track rtr command.
12.2(33)SXI1
This command was integrated into Cisco IOS Release 12.2(33)SXI1. This command replaces the track rtr command.
Cisco IOS XE Release 2.4
This command was integrated into Cisco IOS XE Release 2.4. This command replaces the track rtr command.
12.2(33)SRE
This command was integrated into Cisco IOS XE 12.2(33)SRE. This command replaces the track rtr command.
15.1(3)T
This command was modified. The valid range of the object-number argument increased to 1000.
15.1(1)S
This command was modified. The valid range for the object-number argument increased to 1000.
Usage Guidelines
Every IP SLAs operation maintains an operation return-code value. This return code is interpreted by the tracking process. The return code may return OK, OverThreshold, and several other return codes. Different operations may have different return-code values, so only values common to all operation types are used.
Two aspects of an IP SLAs operation can be tracked: state and reachability. The difference between these aspects relates to the acceptance of the OverThreshold return code. Table 79 shows the state and reachability aspects of IP SLAs operations that can be tracked.
Table 79 Comparison of State and Reachability Operations
Tracking
Return Code
Track State
State
OK
(all other return codes)
Up
Down
Reachability
OK or over threshold
(all other return codes)
Up
Down
As of Cisco IOS Release 15.1(3)T, a maximum of 1000 objects can be tracked. Although 1000 tracked objects can be configured, each tracked object uses CPU resources. The amount of available CPU resources on a router is dependent upon variables such as traffic load and how other protocols are configured and run. The ability to use 1000 tracked objects is dependent upon the available CPU. Testing should be conducted on site to ensure that the service works under the specific site traffic conditions.
Examples
The following example shows how to configure the tracking process to track the state of IP SLAs operation 2:
Router(config)# track 1 ip sla 2 state
The following example shows how to configure the tracking process to track the reachability of IP SLAs operation 3:
Router(config)# track 2 ip sla 3 reachability
Related Commands
Command
Description
track ip route
Tracks the state of an IP route and enters tracking configuration mode.
HTH
Regards
Inayath
*Plz dont forget to rate if this info is helpfull. -
1. public class TestA {
2. TestB b;
3. TestA() {
4 b = new TestB(this);
5 }
6 }
7public class TestB {
8 TestA a;
9 TestB(TestA a) {
10 this.a = a;
11 }
12}
13public class TestAll {
14 public static void main(String[] args) {
15 new TestAll().makeThings();
16 }
17
18 void makeThings() {
19 TestA test = new TestA();
20 }
21}
which two statement are true after line 15, before main complete(choose two)
a. Line 15 will casuse a stack flow
b. Exception throws at run time.
c. The object referebced by a is eligible for garbage collection
d. The object referebced by b is eligible for garbage collection
e. The object referebced by a is not eligible for garbage collection
f. The object referebced by b is not eligible for garbage collection
Answer C,Fa. Line 15 will casuse a stack flow
b. Exception throws at run time.
c. The object referenced by a is eligible for garbage collection
d. The object referenced by b is eligible for garbage collection
e. The object referenced by a is not eligible for garbage collection
f. The object referenced by b is not eligible for garbage collection
Answer C,FActually, C is correct, but F isn't. The correct answer would be C and D.
An object is available for garbage collection if it is no longer strongly reachable. An object is strongly reachable if it can be accessed through a chain of strong references from either a static variable in a loaded class or from a local variable that is currently on the call stack.
After line 15 finishes, neither is true for either the instance of TestA or the instance of TestB, so they are both available for garbage collection. -
All the subnets are not reachable over the VPN
Hi all,
We have a EZVPN connection to one of our branch office. Connectivity diagram is attached with this discussion.
HO LAN (10.1.0.0/16 & 192.6.14.0/24) --------- ASA5520-------- Internet ---------- Cisco2911-------- LAN of remote location (10.2.0.0/16)
we are using 10.2.0.0/26 subnet at remote office and 10.1.0.0/16 & 192.6.14.0/24 subnets at HO. From HO through 10.1.0.0/16 & 192.6.14.0/24 all the devices are reachable except the firewall which is connected with GigabitEthernet0/2 interface of cisco2911 router(on which VPN is created).
Its a fortigate firewall and it is reachable locally from the network 10.2.0.0/16. I believe its an issue with phase2 ACLs but didn't able to resolve the issue.
I'm not able to take GUI / CLI interfaces of fortigate firewall even i'm not able to ping the IP of GigabitEthernet0/2 interface of cisco2911.
kindly advise on same.
Below is the configuration of ASA5520 of HO and cisco2911 router of branch office
ASA5520:-
access-list inside_access_in extended permit ip 192.6.14.0 255.255.255.0 10.2.0.0 255.255.0.0
access-list inside_access_in extended permit ip 10.1.0.0 255.255.0.0 10.2.0.0 255.255.0.0
access-list inside_nat0_outbound extended permit ip 192.6.14.0 255.255.255.0 10.2.0.0 255.255.0.0
access-list inside_nat0_outbound extended permit ip 10.1.0.0 255.255.0.0 10.2.0.0 255.255.0.0
access-list splittunnelacl_JNC_AUH extended permit ip 192.6.14.0 255.255.255.0 10.2.0.0 255.255.0.0
access-list splittunnelacl_JNC_AUH extended permit ip 10.1.0.0 255.255.0.0 10.2.0.0 255.255.0.0
access-list Outside_cryptomap_65534.191 extended permit ip object-group DM_INLINE_NETWORK_103 10.2.0.0 255.255.0.0
jashanmalasa/sec/act# sho run obj
jashanmalasa/sec/act# sho run object-group | b DM_INLINE_NETWORK_103
object-group network DM_INLINE_NETWORK_103
network-object 10.1.0.0 255.255.0.0
network-object 192.6.14.0 255.255.255.0
group-policy AUHNEW internal
group-policy AUHNEW attributes
dns-server value 192.6.14.189 192.6.14.182
vpn-access-hours none
vpn-idle-timeout none
vpn-session-timeout none
vpn-filter none
vpn-tunnel-protocol IPSec
ip-comp disable
re-xauth disable
pfs enable
ipsec-udp disable
split-tunnel-policy tunnelspecified
split-tunnel-network-list value
default-domain value xxxxxx
secure-unit-authentication disable
user-authentication disable
user-authentication-idle-timeout none
ip-phone-bypass disable
leap-bypass disable
nem enable
tunnel-group AUHNEW type remote-access
tunnel-group AUHNEW general-attributes
authorization-server-group LOCAL
default-group-policy AUHNEW
tunnel-group AUHNEW ipsec-attributes
pre-shared-key *****
peer-id-validate nocheck
isakmp ikev1-user-authentication none
Cisco2911:-
Current configuration : 10258 bytes
! Last configuration change at 19:06:18 AST Thu May 8 2014 by admin
! NVRAM config last updated at 19:01:43 AST Thu May 8 2014 by admin
! NVRAM config last updated at 19:01:43 AST Thu May 8 2014 by admin
version 15.1
service timestamps debug datetime msec localtime
service timestamps log datetime msec localtime
service password-encryption
hostname AUHOffice_RTR
boot-start-marker
boot system flash:c2900-universalk9-mz.SPA.151-4.M4.bin
boot-end-marker
card type e1 0 0
no aaa new-model
clock timezone AST 4 0
network-clock-participate wic 0
network-clock-select 1 E1 0/0/0
no ipv6 cef
ip source-route
ip cef
ip name-server 213.42.xxx.xxx
multilink bundle-name authenticated
isdn switch-type primary-net5
crypto pki token default removal timeout 0
voice-card 0
dspfarm
dsp services dspfarm
voice service voip
fax protocol pass-through g711ulaw
voice class codec 1
codec preference 1 g711ulaw
codec preference 2 g711alaw
codec preference 3 g729r8
codec preference 4 g729br8
voice class h323 1
h225 timeout tcp establish 3
voice translation-rule 1
rule 1 /^9\(.*\)/ /\1/
voice translation-rule 2
rule 1 /^0\(2.......\)$/ /00\1/
rule 2 /^0\(3.......\)$/ /00\1/
rule 3 /^0\(4.......\)$/ /00\1/
rule 4 /^0\(5........\)$/ /00\1/
rule 5 /^0\(6.......\)$/ /00\1/
rule 6 /^0\(7.......\)$/ /00\1/
rule 7 /^0\(9.......\)$/ /00\1/
rule 8 /^00\(.*\)/ /0\1/
rule 9 /^.......$/ /0&/
rule 10 // /000\1/
voice translation-rule 3
rule 1 /^3../ /026969&/
voice translation-profile FROM_PSTN
translate calling 2
translate called 1
voice translation-profile TO_PSTN
translate calling 3
license udi pid CISCO2911/K9 sn xxxxxxxxx
license accept end user agreement
license boot module c2900 technology-package securityk9
hw-module pvdm 0/0
hw-module sm 1
username admin privilege 15 secret 4 Ckg/sS5mzi4xFYrh1ggXo92THcL6Z0c6ng70wM9oOxg
redundancy
controller E1 0/0/0
framing NO-CRC4
pri-group timeslots 1-10,16
crypto ipsec client ezvpn jashanvpn
connect auto
group AUHNEW key jashvpn786
mode network-extension
peer 83.111.xxx.xxx
acl 150
nat allow
nat acl 110
xauth userid mode interactive
interface Embedded-Service-Engine0/0
no ip address
shutdown
interface GigabitEthernet0/0
ip address 10.2.0.1 255.255.255.248
ip nat inside
ip virtual-reassembly in
ip tcp adjust-mss 1430
ip policy route-map temp
duplex auto
speed auto
crypto ipsec client ezvpn jashanvpn inside
h323-gateway voip interface
h323-gateway voip bind srcaddr 10.2.0.1
interface GigabitEthernet0/1
description *** Connected to 40MB Internet ***
no ip address
ip nat outside
ip virtual-reassembly in
duplex auto
speed auto
pppoe enable group global
pppoe-client dial-pool-number 1
interface GigabitEthernet0/2
ip address 10.2.0.11 255.255.255.248
duplex auto
speed auto
interface Serial0/0/0:15
no ip address
encapsulation hdlc
isdn switch-type primary-net5
isdn incoming-voice voice
no cdp enable
interface SM1/0
ip unnumbered GigabitEthernet0/0
service-module ip address 10.2.0.3 255.255.255.248
!Application: CUE Running on SM
service-module ip default-gateway 10.2.0.1
interface SM1/1
description Internal switch interface connected to Service Module
no ip address
interface Vlan1
no ip address
interface Dialer0
description *** JASHANMAL 40MB Internet ***
ip address negotiated
ip mtu 1492
ip nat outside
ip virtual-reassembly in
encapsulation ppp
dialer pool 1
dialer-group 1
ppp authentication chap pap callin
ppp chap hostname xxxxx
ppp chap password 7 0252150B0C0D5B2748
ppp pap sent-username xxxxxx password 7 15461A5C03217F222C
crypto ipsec client ezvpn jashanvpn
ip forward-protocol nd
no ip http server
no ip http secure-server
ip nat inside source route-map nonat interface Dialer0 overload
ip route 0.0.0.0 0.0.0.0 Dialer0
ip route 10.2.0.0 255.255.248.0 10.2.0.2
ip route 10.2.0.3 255.255.255.255 SM1/0
ip route 10.2.6.1 255.255.255.255 10.2.0.2
ip route 10.2.7.1 255.255.255.255 10.2.0.2
ip route 172.16.5.0 255.255.255.0 10.2.0.2
access-list 100 deny ip 10.2.4.0 0.0.0.255 10.1.15.0 0.0.0.255
access-list 100 deny ip 10.2.4.0 0.0.0.255 192.6.14.0 0.0.0.255
access-list 100 deny ip 10.2.4.0 0.0.0.255 10.1.50.0 0.0.0.255
access-list 100 deny ip 10.2.4.0 0.0.0.255 10.1.2.0 0.0.0.255
access-list 100 deny ip 172.16.5.0 0.0.0.255 10.1.6.0 0.0.0.255
access-list 100 permit ip 10.2.4.0 0.0.0.255 any
access-list 100 permit ip 172.16.5.0 0.0.0.255 any
access-list 110 deny ip 10.2.0.0 0.0.0.255 192.6.14.0 0.0.0.255
access-list 110 deny ip 10.2.2.0 0.0.0.255 192.6.14.0 0.0.0.255
access-list 110 deny ip 10.2.3.0 0.0.0.255 192.6.14.0 0.0.0.255
access-list 110 deny ip 10.2.1.0 0.0.0.255 192.6.14.0 0.0.0.255
access-list 110 deny ip 10.2.5.0 0.0.0.255 192.6.14.0 0.0.0.255
access-list 110 deny ip 10.2.5.0 0.0.0.255 10.1.0.0 0.0.255.255
access-list 110 deny ip 10.2.3.0 0.0.0.255 10.1.0.0 0.0.255.255
access-list 110 deny ip 10.2.2.0 0.0.0.255 10.1.0.0 0.0.255.255
access-list 110 deny ip 10.2.1.0 0.0.0.255 10.1.0.0 0.0.255.255
access-list 110 deny ip 10.2.0.0 0.0.0.255 10.1.0.0 0.0.255.255
access-list 110 deny ip 10.2.4.0 0.0.0.255 10.1.9.0 0.0.0.255
access-list 110 deny ip 10.2.4.0 0.0.0.255 10.1.50.0 0.0.0.255
access-list 110 deny ip 10.2.4.0 0.0.0.255 10.1.15.0 0.0.0.255
access-list 110 deny ip 10.2.4.0 0.0.0.255 192.6.14.0 0.0.0.255
access-list 110 deny ip 10.2.4.0 0.0.0.255 10.1.2.0 0.0.0.255
access-list 110 deny ip 10.2.6.0 0.0.0.255 10.1.15.0 0.0.0.255
access-list 110 deny ip 10.2.6.0 0.0.0.255 10.1.0.0 0.0.255.255
access-list 110 deny ip 10.2.6.0 0.0.0.255 192.6.14.0 0.0.0.255
access-list 110 deny ip 172.16.5.0 0.0.0.255 192.6.14.0 0.0.0.255
access-list 110 deny ip 172.16.5.0 0.0.0.255 10.1.0.0 0.0.255.255
access-list 110 deny ip 172.16.5.0 0.0.0.255 10.1.9.0 0.0.0.255
access-list 110 deny ip 172.16.5.0 0.0.0.255 10.1.50.0 0.0.0.255
access-list 110 deny ip 172.16.5.0 0.0.0.255 10.1.15.0 0.0.0.255
access-list 110 deny ip 172.16.5.0 0.0.0.255 10.1.2.0 0.0.0.255
access-list 110 permit ip host 10.2.6.1 any
access-list 110 permit ip host 10.2.6.2 any
access-list 110 permit ip host 10.2.6.3 any
access-list 110 permit ip host 10.2.6.4 any
access-list 110 permit tcp 10.2.0.0 0.0.255.255 host 86.96.201.72 eq 10008
access-list 110 permit tcp 10.2.0.0 0.0.255.255 host 86.96.254.136 eq 10008
access-list 110 permit tcp 10.2.0.0 0.0.255.255 host 216.52.207.67 eq www
access-list 110 permit tcp 10.2.0.0 0.0.255.255 host 199.168.151.22 eq www
access-list 110 permit tcp 10.2.0.0 0.0.255.255 host 199.168.148.22 eq www
access-list 110 permit tcp 10.2.0.0 0.0.255.255 host 199.168.149.22 eq www
access-list 110 permit tcp 10.2.0.0 0.0.255.255 host 199.168.150.22 eq www
access-list 110 permit tcp 172.16.5.0 0.0.0.255 any
access-list 150 permit ip 10.2.4.0 0.0.0.255 any
access-list 150 permit ip 10.2.0.0 0.0.0.255 any
access-list 150 permit ip 10.2.1.0 0.0.0.255 any
access-list 150 permit ip 10.2.2.0 0.0.0.255 any
access-list 150 permit ip 10.2.3.0 0.0.0.255 any
access-list 150 permit ip 10.2.5.0 0.0.0.255 any
access-list 150 permit ip 10.2.6.0 0.0.0.255 any
access-list 150 permit ip 172.16.5.0 0.0.0.255 any
access-list 150 permit ip 10.2.7.0 0.0.0.255 any
route-map temp permit 100
match ip address 100
set ip next-hop 10.2.0.9
route-map temp permit 110
route-map nonat permit 10
match ip address 110
snmp-server community xxxxxxxx
snmp-server location JNC AbuDhabi Office
snmp-server contact xxxxxxxx
snmp-server enable traps tty
snmp-server enable traps cpu threshold
snmp-server enable traps syslog
snmp-server host xxxxx version 2c jash
control-plane
voice-port 0/0/0:15
translation-profile incoming FROM_PSTN
bearer-cap Speech
voice-port 0/1/0
voice-port 0/1/1
voice-port 0/1/2
voice-port 0/1/3
mgcp profile default
dial-peer cor custom
name CCM
name 0
name 00
dial-peer cor list CCM
member CCM
member 0
member 00
dial-peer cor list 0
member 0
dial-peer cor list 00
member 0
member 00
dial-peer voice 100 voip
corlist incoming CCM
preference 1
destination-pattern [1-8]..
session target ipv4:10.1.2.12
incoming called-number [1-8]..
voice-class codec 1
voice-class h323 1
dtmf-relay h245-alphanumeric
no vad
dial-peer voice 101 voip
corlist incoming CCM
huntstop
preference 2
destination-pattern [1-8]..
session target ipv4:10.1.2.11
incoming called-number [1-8]..
voice-class codec 1
voice-class h323 1
dtmf-relay h245-alphanumeric
no vad
dial-peer voice 201 pots
corlist outgoing 0
translation-profile outgoing TO_PSTN
destination-pattern 0[1-9]T
incoming called-number .
direct-inward-dial
port 0/0/0:15
dial-peer voice 202 pots
corlist outgoing 0
translation-profile outgoing TO_PSTN
destination-pattern 00[1-9]T
incoming called-number .
direct-inward-dial
port 0/0/0:15
prefix 0
dial-peer voice 203 pots
corlist outgoing 00
translation-profile outgoing TO_PSTN
destination-pattern 000T
incoming called-number .
direct-inward-dial
port 0/0/0:15
prefix 00
gateway
timer receive-rtp 1200
gatekeeper
shutdown
call-manager-fallback
secondary-dialtone 0
max-conferences 8 gain -6
transfer-system full-consult
timeouts interdigit 4
ip source-address 10.2.0.1 port 2000
max-ephones 58
max-dn 100
system message primary Your Current Options SRST Mode
transfer-pattern .T
alias 1 300 to 279
call-forward pattern .T
time-zone 35
date-format dd-mm-yy
cor incoming 0 1 100 - 899
line con 0
password 7 030359065206234104
login local
line aux 0
password 7 030359065206234104
login local
line 2
no activation-character
no exec
transport preferred none
transport input all
transport output pad telnet rlogin lapb-ta mop udptn v120 ssh
stopbits 1
line 67
no activation-character
no exec
transport preferred none
transport input all
transport output pad telnet rlogin lapb-ta mop udptn v120 ssh
stopbits 1
line vty 0 4
password 7 110E1B08431B09014E
login local
transport input all
line vty 5 15
password 7 030359065206234104
login local
transport input all
scheduler allocate 20000 1000
ntp master 1
endAttached is the result from packet tracer of ASA5520-ASDM
-
ORA-12545: Connect failed because target host or object does not exist
Hey Guys,
I know this particular query has been pinging around for ages now, but i cannot seem to get a good answer from anywhere :)
Oracle 10g Database RAC installation- installed/ and running
Oracle 10g Client on different box.
Problem:
[user@myserver ~]$ sqlplus
SQL*Plus: Release 10.2.0.3.0 - Production on Fri Apr 4 16:14:11 2008
Copyright (c) 1982, 2006, Oracle. All Rights Reserved.
Enter user-name: user
Enter password:
ERROR:
ORA-12545: Connect failed because target host or object does not exist
All env variables are set in user .profile:
export ORACLE_HOME=/space/oracle/oracle/product/10.2.0/client_1
export ORACLE_SID=MSRAC
PATH=$PATH:$ORACLE_HOME/bin:$JAVA_HOME/bin
export PATH
Full contents of tnsnames.ora on client machine:
LISTENER_ORCLTELE =
(ADDRESS = (PROTOCOL = TCP)(HOST = 172.16.3.9)(PORT = 1521))
ORCLTELE =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 172.16.3.9)(PORT = 1521))
(CONNECT_DATA =
(SERVICE_NAME = orcltele)
EXTPROC_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC2))
(CONNECT_DATA =
(SID = PLSExtProc)
(PRESENTATION = RO)
MSRAC =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 172.16.3.12)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = 172.16.3.13)(PORT = 1521))
(LOAD_BALANCE = yes)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = MSRAC)
(failover_mode =
(type=select)
(method=basic)
(retries=180)
(delay=5))
I am not sure if the first 3 connection entries are even needed in here, are they?
The last entry is the connect info for the live database.
What buggs me is that this works:
[user@myserver ~]$ sqlplus 'user/user@msrac'
SQL*Plus: Release 10.2.0.3.0 - Production on Fri Apr 4 16:19:40 2008
Copyright (c) 1982, 2006, Oracle. All Rights Reserved.
Connected to:
Oracle Database 10g Release 10.2.0.3.0 - 64bit Production
With the Real Application Clusters option
SQL>quit
BTW: This is the error catpured in sqlnet.log
Fatal NI connect error 12545, connecting to:
(DESCRIPTION=(ADDRESS=(PROTOCOL=beq)(PROGRAM=/space/oracle/oracle/product/10.2.0/client_1/bin/oracle)(ARGV0=oracleMSRAC)(ARGS='(DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))')(DETACH=NO))(CONNECT_DATA=(CID=(PROGRAM=sqlplus)(HOST=myserver.me.com)(USER=user))))
VERSION INFORMATION:
TNS for Linux: Version 10.2.0.3.0 - Production
Oracle Bequeath NT Protocol Adapter for Linux: Version 10.2.0.3.0 - Production
TCP/IP NT Protocol Adapter for Linux: Version 10.2.0.3.0 - Production
Time: 04-APR-2008 16:14:16
Tracing not turned on.
Tns error struct:
ns main err code: 12545
TNS-12545: Connect failed because target host or object does not exist
ns secondary err code: 12560
nt main err code: 515
TNS-00515: Connect failed because target host or object does not exist
nt secondary err code: 2
nt OS err code: 0
I have a funny feeling that the problem lies with either:
PROTOCOL=beq
and/or
ARGV0=oracleMSRAC
I have tried everything to remedy this, this is why i am now turning to you guys.
Any and all help is always greatly appreciated.
RobertHi Guys,
Thank you both for your responses, my findings are as follows:
1. HOST=X.X.COM, ensure host is reachable : PING works and host(s) are reachable.
2. In RAC Env, ensure TNS Name is correctly spelled, spelling fine, i can connect with the tns name (is TNS name same as SERVICE_NAME?) by: sqlplus 'user/user@racenv'; but my efforts still will not allow me to use:
sqlplus 'user/user' it tells me that the host or object is does not exist, does this refer to the actual physical machine or the service name, or the instance name?
All host entries in my tnsnames.ora file refer to the vip addresses of both servers holding the rac installation, and both are resolved just fine, testing with ping; any other way to test this?
tnsnames file contains CONNECTION strings in the following order (does the listener entry need to be in the file? on the machine that i am trying to connect from?):
LISTENER_ORCLTELE =
(ADDRESS = (PROTOCOL = TCP)(HOST = 172.16.3.9)(PORT = 1521))
ORCLTELE =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 172.16.3.9)(PORT = 1521))
(CONNECT_DATA =
(SERVICE_NAME = orcltele)
EXTPROC_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC2))
(CONNECT_DATA =
(SID = PLSExtProc)
(PRESENTATION = RO)
I tried removing all entries but the entry for MSRAC, but still no joy:
MSRAC =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 172.16.3.12)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = 172.16.3.13)(PORT = 1521))
(LOAD_BALANCE = yes)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = MSRAC)
(failover_mode =
(type=select)
(method=basic)
(retries=180)
(delay=5))
Thanks again,
Robert..
In the sqlnet.log file the error is as follows:
Fatal NI connect error 12545, connecting to:
(DESCRIPTION=(ADDRESS=(PROTOCOL=beq)(PROGRAM=/space/oracle/oracle/product/10.2.0/client_1//bin/oracle)(ARGV0=oracleMSRAC)(ARGS='(DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))')(DETACH=NO))(CONNECT_DATA=(CID=(PROGRAM=sqlplus)(HOST=x.x.com)(USER=oracle))))
VERSION INFORMATION:
TNS for Linux: Version 10.2.0.3.0 - Production
Oracle Bequeath NT Protocol Adapter for Linux: Version 10.2.0.3.0 - Production
TCP/IP NT Protocol Adapter for Linux: Version 10.2.0.3.0 - Production
Time: 07-APR-2008 11:03:12
Tracing not turned on.
Tns error struct:
ns main err code: 12545
TNS-12545: Connect failed because target host or object does not exist
ns secondary err code: 12560
nt main err code: 515
TNS-00515: Connect failed because target host or object does not exist
nt secondary err code: 2
nt OS err code: 0
It mentions PROTOCOL=BEQ, this should be TCP, is there a way to enforce TCP or disable BEQ??
Rob
Message was edited by:
DobSun -
Exception Thrown when trying to save object to disk
Alright,
So I've got an object that looks like this
private class InputData implements Serializable {
public String name = "";
public String condition = "";
public String value = "";
public String[] productTypes = new String[]{};
public String[] ticketStates = new String[]{};
public String fieldName = "";
public String startDate = "";
public String endDate = "";
public String dateRange = "";
............................It has two constructors and overrides the toString() method. I'm trying to save it to a file with the following
private void saveSearchesToDisk() {
File f = new File(SAVED_SEARCHES_DIR, SAVED_SEARCHES_FILE);
InputData[] data = ...
try {
FileOutputStream fos = new FileOutputStream(f);
ObjectOutputStream oos = new ObjectOutputStream(fos);
oos.writeInt(data.length);
for (int i = 0; i < data.length; i++) {
oos.writeObject(data);
oos.flush();
oos.close();
fos.close();
}catch(FileNotFoundException e) {
e.printStackTrace();
catch(IOException e) {
System.out.println(e.getMessage() + " hi hi hi hi");
e.printStackTrace();
I'm getting this exception, and I have no idea why???
java.io.NotSerializableException: com.sun.java.swing.plaf.windows.XPStyleAny ideas?I think you are misunderstanding something.
The reason why the outer members are being serialized, or attempted to be serialized, is because of the inner object's hidden link to the outer object. So the outer object is reachable from the inner object, and the outer data members are reachable from the outer object. There is no hidden link from the inner object directly to the outer object's members if that's what you're talking about. So there is no need for the notation you are talking about and so it doesn't exist.
So the question remains, do you want the outer object serialized or not? -
Exchange 2010 unable to find objects in child domain via ESM
I am having a problem on Exchange 2010 which relates to mailboxes whose AD account is in a child domain in the AD forest.
We have two domains A & B in the forest. The site which hosts E2010 only has DCs from domain A (root domain). These DCs are set as Global Catalogues.
All Exchange servers (2 x CAS & 2 x Mailbox) installed in Domain A (primary site) can resolve domain B and performing nslookups for domain B on these server displays the DCs installed
in domain B at remote sites.
I am migrating some resource mailboxes with AD accounts in domain B and need to set them up as room mailboxes to enable the auto accept bookings feature.
After migrating the mailboxes via the EMS to set the mailbox as a room, below is the error I get:
[PS] C:\Windows\system32>set-mailbox mtgrm1@domainB
-Type Room
The operation couldn't be performed because object 'mtgrm1@ domainB' couldn't be found on 'DC01.domainA.com'.
+ CategoryInfo : NotSpecified: (0:Int32) [Set-Mailbox], ManagementObjectNotFoundException
+ FullyQualifiedErrorId : 9E6F6A1,Microsoft.Exchange.Management.RecipientTasks.SetMailbox
I have also tried using only the alias and the object CN:
set-mailbox mtgrm1 -Type Room
set-mailbox –identity 'domainB/Sitename/ Users/MSX Resource Accounts/Conf MtgRm1 (Video)' -Type Room
but get the same error.
All employee mailboxes from Domain B have been migrated to Exchange 2010 from 2003 and are working with no problems.
I have confirmed domain B has been prepared for E2010 - In the Microsoft Exchange System Objects container in AD there is the global group Exchange Install Domain Servers.
Event ID 2080
Process MSEXCHANGEADTOPOLOGYSERVICE.EXE (PID=1864). Exchange Active Directory Provider has discovered the following servers with the following characteristics:
(Server name | Roles | Enabled | Reachability | Synchronized | GC capable | PDC | SACL right | Critical Data | Netlogon | OS Version)
In-site:
dc02.domainA.COM
CDG 1 7 7 1 0 1 1 7 1
DC01.domainA.com
CDG 1 7 7 1 0 1 1 7 1
Out-of-site:
DC03.domainA.COM
CDG 1 0 0 1 0 0 0 0 0
dc04.domainA.COM
CDG 1 0 0 1 0 0 0 0 0
Please note the Out of site DCs are for our Exchange failover site which is currently down due to the storms on the East Coast.
Does Exchange 2010 require a local DC for the second domain installed in the sites which host Exchange? If not, any advise on what else I can look at will be appreciated.
Thanks.Hi there,
If the questions is answered, please mark it accordingly. Thanks.
Fiona Liao
TechNet Community Support -
Garbage collection of objects created inside a method
I have method and inside the method I create new Objects I mean I instantiate objects using new and call some methods on these objects.
once the method execution is completed and control goes to caller of the method will all the object created inside the method will be garbage collected ?
here with code
public List<StgAuditGeneral> getAudits(
List<StgAuditGeneral> audits= new ArrayList<StgAuditGeneral>();
for(Map<String, String> result :results ){
audits.add(new MapToObject<StgAuditGeneral>() {
@Override
public StgAuditGeneral getObject() {
StgAuditGeneral stg= new StgAuditGeneral();
return stg;
}.getObject());
}in the above method I cam creating tons of objects wil they be garbage collected immediatedly after jvm leaves the method ?user11138293 wrote:
I have method and inside the method I create new Objects I mean I instantiate objects using new and call some methods on these objects.
once the method execution is completed and control goes to caller of the method will all the object created inside the method will be garbage collected ?If there are no reachable references, to those objects, then when the method ends, they become eligible for GC. If and when they are actually collected is something we can't know or control, and generally don't care about. The only guarantee is that everything that can be collected will be collected before an OutOfMemoryError is thrown. So from our perspective, once it's eligible for collection, it is effectively collected.
If you pass references to those objects to something else that holds onto them after the method ends, then they are still reachable, and not eligible for collection.
However, you almost never need to even think about whether something is eligible for GC or not. It works pretty intuitively. -
Creating interface objects in the IR
I want to create a scenario in which I send a file from a Legacy system to the XI, process the message using the BPM and send it to SAP R/3.
In the integration repository I have 3 software components (one for each system: legacy, SAP APPL, SAP BASIS)
Where am I supposed to create the interface objects ? (AM I supposed to create all the objects under one namespace in one software component or maybe create in each software component only the relevant objects ?!?!)
The problem is that I always get to a point where I need to use objects that I defined in other software component... (and are not reachable)Hi,
All structure pretaining to legacy side, create in legacy SWCV. For processing the message in XI, you can probably create a SWCV for middleware, so that all processing logic, mapping you can create it here. Maintain the R/3 structures in R/3 SWCV.
Also make sure, you create dependencies among these SWCV in the SLD, so that you can use one SWCV objects in other SWCV.
Thanks,
Sasi -
Hi all,
I am working with JAVA, My questuin is that : Let us say A and B are two classes and
in class A i created object for class B with new operator, and we have another class called C in this class i created object for class A, after implementation of my business logic in class C, i put class A object to NULL, so here we are removing reference to calss A object, now here does the GC cleans up the memory space of both class A and B or only class A. Cn any one clear my doubt please.If B and C are only referred to by A, then both will be eligible for garbage collection when A is no longer reachable.
% -
TopLink - Best Practice Question - Object Validation
We are fairly new to TopLink and have a question about doing object validation. We would like perform some validation on our objects that are about to be persisted to the DB. Since TopLink will persist all objects that are reachable from the ojects that are registered (I think) we would like to send a message to each of these objects (validate) before they are persisted. If the object validation fails, we will throw an exception (and the objects will not be persisted), hopefully such that the exception can be received by the client. Has anybody done anything similar to this before, or is there a better way of approaching this?
TIA for any help.Are you using EJBs?
If so, there are a couple of options that may work better for you.
1. You could use the ejbStore method for your validation and throw the exception in there. You should be able to get the exception on the client side, but it may be wrapped in several layers.
2. For more complex validation, you may want to use a session bean to control the validation process. It can interact with your entity beans and provide feedback about why validation fails.
Maybe you are looking for
-
Error message while doing MIGO.
Hi, I am getting error message while doing MIGO. Can some one help me out in this issue. Consolidated companies 0 and 5686 are different Message no. F5 080 Diagnosis The number of the affiliated company must be clear for the selected document type fo
-
Windows 7 and HP psc 1317 All in One printer
A friend has a new laptop with Windows 7 installed. I am trying to install the software for his HP psc 1317 series all in one. I have down loaded the drivers etc from the HP site but despite running it as an administrator, both from the original disc
-
R/3 4.6c SR2 on win2003
Hi Masters, I am struggling with an installation of the above. We are doing a migration of 4.6c Oracle from Solaris to Windows to upgrade it in the next step. As soon as I start the CI instance installation I run into the following error: Error: R3PI
-
Could not complete your request
Receiving message could not complete your request because photoshop does not recognize this type of file. My wife just installed mavericks and updated to flash 11. When we try to bring a photo into pse 12 . We receive the above message. We are trying
-
Unable to order prints from iPhoto online
After I download photos from my camera to iPhoto and attempt to upload to Walgreens, Wal-Mart, Costco, etc., I receive an error indicating that the resolution is too low. I've recently converted over to the mac from PC and didn't have this problem be