<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 08:51:45 UTC 2024

It is possible to restrict the fields that are returned in this document by specifying the 'field' parameter in your request.
For example, to request only the issue key and summary append 'field=key&field=summary' to the URL of your request.
-->
<rss version="0.92" >
<channel>
    <title>MongoDB Jira</title>
    <link>https://jira.mongodb.org</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-us</language>    <build-info>
        <version>9.7.1</version>
        <build-number>970001</build-number>
        <build-date>13-04-2023</build-date>
    </build-info>


<item>
            <title>[JAVA-211] need to be able to determine if there is an error or exception</title>
                <link>https://jira.mongodb.org/browse/JAVA-211</link>
                <project id="10006" key="JAVA">Java Driver</project>
                    <description>&lt;p&gt;Have the following codes:&lt;/p&gt;

&lt;p&gt;		try {&lt;br/&gt;
			db = mongo.getDb(&quot;lp&quot;);&lt;br/&gt;
			coll = db.getCollection(&quot;lp.mrtest&quot;);&lt;/p&gt;

&lt;p&gt;			if (enable_limit) &lt;/p&gt;
{
				cur = coll.find(query).limit(20).addOption(
						Bytes.QUERYOPTION_SLAVEOK);
			} else {
				cur = coll.find(query).addOption(Bytes.QUERYOPTION_SLAVEOK);
			}&lt;br/&gt;
			size = enable_limit ? cur.itcount() : cur.size();&lt;br/&gt;
		} catch (Exception ex) {&lt;br/&gt;
			System.out.println(&quot;count: get exception &quot; + ex);&lt;br/&gt;
			ex.printStackTrace();&lt;br/&gt;
			&lt;br/&gt;
			db = mongo.getDb(&quot;lp&quot;);&lt;br/&gt;
			coll = db.getCollection(&quot;lp.mrtest&quot;);&lt;br/&gt;
			if (enable_limit) {				cur = coll.find(query).limit(20).addOption(						Bytes.QUERYOPTION_SLAVEOK);			}
&lt;p&gt; else &lt;/p&gt;
{
				cur = coll.find(query).addOption(Bytes.QUERYOPTION_SLAVEOK);
			}&lt;br/&gt;
			size = enable_limit ? cur.itcount() : cur.size();&lt;br/&gt;
			System.out.println(&quot;count: get &quot; + size);&lt;br/&gt;
		} catch (Throwable t) {&lt;br/&gt;
			System.out.println(&quot;count: get thowable &quot; + t);&lt;br/&gt;
			t.printStackTrace();&lt;br/&gt;
			&lt;br/&gt;
			db = mongo.getDb(&quot;lp&quot;);&lt;br/&gt;
			coll = db.getCollection(&quot;lp.mrtest&quot;);&lt;br/&gt;
			if (enable_limit) {
				cur = coll.find(query).limit(20).addOption(
						Bytes.QUERYOPTION_SLAVEOK);
			} else {				cur = coll.find(query).addOption(Bytes.QUERYOPTION_SLAVEOK);			}
&lt;p&gt;			size = enable_limit ? cur.itcount() : cur.size();&lt;br/&gt;
			System.out.println(&quot;count: get &quot; + size);&lt;br/&gt;
		}&lt;/p&gt;

&lt;p&gt;Testing failover by issuing kill -9 on the primary node. Cannot seem to be able to catch exception s.t. I&lt;br/&gt;
can retry the query.&lt;/p&gt;

&lt;p&gt;java.io.IOException: couldn&apos;t connect to &lt;span class=&quot;error&quot;&gt;&amp;#91;ip-10-166-59-166/10.166.59.166:20000&amp;#93;&lt;/span&gt; bc:java.net.ConnectException: Connection refused&lt;br/&gt;
        at com.mongodb.DBPort._open(DBPort.java:205)&lt;br/&gt;
        at com.mongodb.DBPort.go(DBPort.java:85)&lt;br/&gt;
        at com.mongodb.DBPort.go(DBPort.java:66)&lt;br/&gt;
        at com.mongodb.DBPort.call(DBPort.java:56)&lt;br/&gt;
        at com.mongodb.DBTCPConnector.call(DBTCPConnector.java:211)&lt;br/&gt;
        at com.mongodb.DBApiLayer$MyCollection.__find(DBApiLayer.java:284)&lt;br/&gt;
        at com.mongodb.DBCursor._check(DBCursor.java:297)&lt;br/&gt;
        at com.mongodb.DBCursor._hasNext(DBCursor.java:420)&lt;br/&gt;
        at com.mongodb.DBCursor.hasNext(DBCursor.java:445)&lt;br/&gt;
        at com.mongodb.DBCursor.itcount(DBCursor.java:535)&lt;br/&gt;
        at com.leadpoint.db.MongoDbQueryPerformanceTest.getCount(MongoDbQueryPerformanceTest.java:101)&lt;br/&gt;
        at com.leadpoint.db.MongoDbQueryPerformanceTest.main(MongoDbQueryPerformanceTest.java:255)&lt;br/&gt;
Nov 4, 2010 4:03:26 PM com.mongodb.DBTCPConnector$MyPort error&lt;br/&gt;
SEVERE: MyPort.error called&lt;br/&gt;
java.io.IOException: couldn&apos;t connect to &lt;span class=&quot;error&quot;&gt;&amp;#91;ip-10-166-59-166/10.166.59.166:20000&amp;#93;&lt;/span&gt; bc:java.net.ConnectException: Connection refused&lt;br/&gt;
        at com.mongodb.DBPort._open(DBPort.java:205)&lt;br/&gt;
        at com.mongodb.DBPort.go(DBPort.java:85)&lt;br/&gt;
        at com.mongodb.DBPort.go(DBPort.java:66)&lt;br/&gt;
        at com.mongodb.DBPort.call(DBPort.java:56)&lt;br/&gt;
        at com.mongodb.DBTCPConnector.call(DBTCPConnector.java:211)&lt;br/&gt;
        at com.mongodb.DBApiLayer$MyCollection.__find(DBApiLayer.java:284)&lt;br/&gt;
        at com.mongodb.DBCursor._check(DBCursor.java:297)&lt;br/&gt;
        at com.mongodb.DBCursor._hasNext(DBCursor.java:420)&lt;br/&gt;
        at com.mongodb.DBCursor.hasNext(DBCursor.java:445)&lt;br/&gt;
        at com.mongodb.DBCursor.itcount(DBCursor.java:535)&lt;/p&gt;</description>
                <environment></environment>
        <key id="13623">JAVA-211</key>
            <summary>need to be able to determine if there is an error or exception</summary>
                <type id="4" iconUrl="https://jira.mongodb.org/secure/viewavatar?size=xsmall&amp;avatarId=14710&amp;avatarType=issuetype">Improvement</type>
                                            <priority id="3" iconUrl="https://jira.mongodb.org/images/icons/priorities/major.svg">Major - P3</priority>
                        <status id="6" iconUrl="https://jira.mongodb.org/images/icons/statuses/closed.png" description="The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.">Closed</status>
                    <statusCategory id="3" key="done" colorName="success"/>
                                    <resolution id="4">Incomplete</resolution>
                                        <assignee username="eliot">Eliot Horowitz</assignee>
                                    <reporter username="joseph.wang">Joseph Wang </reporter>
                        <labels>
                    </labels>
                <created>Thu, 4 Nov 2010 20:10:00 +0000</created>
                <updated>Wed, 4 Dec 2013 16:07:29 +0000</updated>
                            <resolved>Wed, 7 Mar 2012 14:07:32 +0000</resolved>
                                    <version>2.3</version>
                                                    <component>Cluster Management</component>
                    <component>Connection Management</component>
                                        <votes>0</votes>
                                    <watches>2</watches>
                                                                                                                <comments>
                            <comment id="96347" author="jeff.yemin" created="Wed, 7 Mar 2012 14:07:32 +0000"  >&lt;p&gt;Please re-open if you have more information that you can share.&lt;/p&gt;</comment>
                            <comment id="50873" author="scotthernandez" created="Fri, 26 Aug 2011 13:21:14 +0000"  >&lt;p&gt;Joseph, Can you test with the latest driver? If not I&apos;m going to close this as a lot of this code has changed already.&lt;/p&gt;</comment>
                            <comment id="20559" author="eliot" created="Mon, 22 Nov 2010 00:58:39 +0000"  >&lt;p&gt;You should have gotten a MongoException.Network error&lt;br/&gt;
Can you try with head and let me know what you get?&lt;/p&gt;</comment>
                            <comment id="20037" author="joseph.wang" created="Thu, 4 Nov 2010 20:25:09 +0000"  >&lt;p&gt;Tried db.getLastError(). Doesn&apos;t seem to work.&lt;/p&gt;

&lt;p&gt;                        DBObject dbObject = db.getLastError();&lt;br/&gt;
			if (dbObject != null) {&lt;br/&gt;
				if (dbObject.get(&quot;err&quot;) != null) &lt;/p&gt;
{
				System.out.println(&quot;Info getCount:&quot;
						+ dbObject.get(&quot;err&quot;));
				}
&lt;p&gt;			}&lt;/p&gt;

&lt;p&gt;java.net.SocketException: Connection reset&lt;br/&gt;
        at java.net.SocketInputStream.read(SocketInputStream.java:168)&lt;br/&gt;
        at java.io.BufferedInputStream.fill(BufferedInputStream.java:218)&lt;br/&gt;
        at java.io.BufferedInputStream.read1(BufferedInputStream.java:258)&lt;br/&gt;
        at java.io.BufferedInputStream.read(BufferedInputStream.java:317)&lt;br/&gt;
        at org.bson.io.Bits.readFully(Bits.java:35)&lt;br/&gt;
        at org.bson.io.Bits.readFully(Bits.java:28)&lt;br/&gt;
        at com.mongodb.Response.&amp;lt;init&amp;gt;(Response.java:35)&lt;br/&gt;
        at com.mongodb.DBPort.go(DBPort.java:101)&lt;br/&gt;
        at com.mongodb.DBPort.go(DBPort.java:66)&lt;br/&gt;
        at com.mongodb.DBPort.call(DBPort.java:56)&lt;br/&gt;
        at com.mongodb.DBTCPConnector.call(DBTCPConnector.java:211)&lt;br/&gt;
        at com.mongodb.DBApiLayer$MyCollection.__find(DBApiLayer.java:284)&lt;br/&gt;
        at com.mongodb.DB.command(DB.java:152)&lt;br/&gt;
        at com.mongodb.DB.command(DB.java:141)&lt;br/&gt;
        at com.mongodb.DB.getLastError(DB.java:302)&lt;br/&gt;
        at com.leadpoint.db.MongoDbQueryPerformanceTest.getCount(MongoDbQueryPerformanceTest.java:102)&lt;br/&gt;
        at com.leadpoint.db.MongoDbQueryPerformanceTest.main(MongoDbQueryPerformanceTest.java:264)&lt;br/&gt;
Nov 4, 2010 4:21:02 PM com.mongodb.ReplicaSetStatus$Node update&lt;br/&gt;
WARNING: node down: ip-10-166-57-74:20000 java.io.EOFException&lt;/p&gt;</comment>
                    </comments>
                    <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_15850" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|hrhcmv:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10558" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Rank (Obsolete)</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>14847</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            </customfields>
    </item>
</channel>
</rss>