You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by ac...@apache.org on 2017/03/01 20:54:54 UTC

[1/4] qpid-dispatch git commit: DISPATCH-309: Remove unused server->connections list.

Repository: qpid-dispatch
Updated Branches:
  refs/heads/master 7a8c2b9d4 -> 798878ab4


DISPATCH-309: Remove unused server->connections list.


Project: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/commit/798878ab
Tree: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/tree/798878ab
Diff: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/diff/798878ab

Branch: refs/heads/master
Commit: 798878ab40c13ffd45208824c6a26cf70e84efe9
Parents: 275a8fb
Author: Alan Conway <ac...@redhat.com>
Authored: Sat Jan 28 00:13:01 2017 -0500
Committer: Alan Conway <ac...@redhat.com>
Committed: Wed Mar 1 13:59:59 2017 -0500

----------------------------------------------------------------------
 src/server.c | 9 ---------
 1 file changed, 9 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/798878ab/src/server.c
----------------------------------------------------------------------
diff --git a/src/server.c b/src/server.c
index 658bb91..48e941c 100644
--- a/src/server.c
+++ b/src/server.c
@@ -84,7 +84,6 @@ struct qd_server_t {
     bool                      signal_handler_running;
     void                     *signal_context;
     int                       pending_signal;
-    qd_connection_list_t      connections;
     qd_timer_t               *heartbeat_timer;
     uint64_t                 next_connection_id;
     void                     *py_displayname_obj;
@@ -605,9 +604,6 @@ static void thread_process_listeners_LH(qd_server_t *qd_server)
         ctx->owner_thread = CONTEXT_NO_OWNER;
         qdpn_connector_set_context(cxtr, ctx);
 
-        // qd_server->lock is already locked
-        DEQ_INSERT_TAIL(qd_server->connections, ctx);
-
         qd_log(qd_server->log_source, QD_LOG_TRACE, "Accepting %s with connection id [%"PRIu64"]",
            log_incoming(logbuf, sizeof(logbuf), cxtr), ctx->connection_id);
 
@@ -1027,7 +1023,6 @@ static void *thread_run(void *arg)
                 }
 
                 sys_mutex_lock(qd_server->lock);
-                DEQ_REMOVE(qd_server->connections, ctx);
 
                 if (ctx->policy_counted) {
                     qd_policy_socket_close(qd_server->qd->policy, ctx);
@@ -1134,9 +1129,6 @@ static void cxtr_try_open(void *context)
     // Increment the connection id so the next connection can use it
     ctx->connection_id = ct->server->next_connection_id++;
     ctx->pn_cxtr = qdpn_connector(ct->server->driver, ct->config->host, ct->config->port, ct->config->protocol_family, (void*) ctx);
-    if (ctx->pn_cxtr) {
-        DEQ_INSERT_TAIL(ct->server->connections, ctx);
-    }
     sys_mutex_unlock(ct->server->lock);
 
     const qd_server_config_t *config = ct->config;
@@ -1287,7 +1279,6 @@ qd_server_t *qd_server(qd_dispatch_t *qd, int thread_count, const char *containe
     if (qd_server == 0)
         return 0;
 
-    DEQ_INIT(qd_server->connections);
     qd_server->qd               = qd;
     qd_server->log_source       = qd_log_source("SERVER");
     qd_server->thread_count     = thread_count;


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org


[3/4] qpid-dispatch git commit: DISPATCH-309: Added AMQP condition constants

Posted by ac...@apache.org.
DISPATCH-309: Added AMQP condition constants


Project: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/commit/275a8fb3
Tree: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/tree/275a8fb3
Diff: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/diff/275a8fb3

Branch: refs/heads/master
Commit: 275a8fb30058942c6e040c46388eedf89929101a
Parents: 454474e
Author: Alan Conway <ac...@redhat.com>
Authored: Mon Jan 23 10:08:51 2017 -0500
Committer: Alan Conway <ac...@redhat.com>
Committed: Wed Mar 1 13:59:59 2017 -0500

----------------------------------------------------------------------
 include/qpid/dispatch/amqp.h | 21 +++++++++++++++++++--
 src/amqp.c                   | 16 ++++++++++++++++
 2 files changed, 35 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/275a8fb3/include/qpid/dispatch/amqp.h
----------------------------------------------------------------------
diff --git a/include/qpid/dispatch/amqp.h b/include/qpid/dispatch/amqp.h
index bda1300..59332df 100644
--- a/include/qpid/dispatch/amqp.h
+++ b/include/qpid/dispatch/amqp.h
@@ -132,7 +132,7 @@ extern const char * const QD_CONNECTION_PROPERTY_COST_KEY;
 
 /** @name AMQP error codes. */
 /// @{
-/** An AMQP error status code and string description  */
+/** AMQP management error status code and string description (HTTP-style)  */
 typedef struct qd_amqp_error_t { int status; const char* description; } qd_amqp_error_t;
 extern const qd_amqp_error_t QD_AMQP_OK;
 extern const qd_amqp_error_t QD_AMQP_CREATED;
@@ -143,6 +143,23 @@ extern const qd_amqp_error_t QD_AMQP_NOT_FOUND;
 extern const qd_amqp_error_t QD_AMQP_NOT_IMPLEMENTED;
 /// @}
 
-/// @}
+/** @name Standard AMQP error condition names. */
+/// @{
+extern const char * const QD_AMQP_COND_INTERNAL_ERROR;
+extern const char * const QD_AMQP_COND_NOT_FOUND;
+extern const char * const QD_AMQP_COND_UNAUTHORIZED_ACCESS;
+extern const char * const QD_AMQP_COND_DECODE_ERROR;
+extern const char * const QD_AMQP_COND_RESOURCE_LIMIT_EXCEEDED;
+extern const char * const QD_AMQP_COND_NOT_ALLOWED;
+extern const char * const QD_AMQP_COND_INVALID_FIELD;
+extern const char * const QD_AMQP_COND_NOT_IMPLEMENTED;
+extern const char * const QD_AMQP_COND_RESOURCE_LOCKED;
+extern const char * const QD_AMQP_COND_PRECONDITION_FAILED;
+extern const char * const QD_AMQP_COND_RESOURCE_DELETED;
+extern const char * const QD_AMQP_COND_ILLEGAL_STATE;
+extern const char * const QD_AMQP_COND_FRAME_SIZE_TOO_SMALL;
+/// @};
 
+/// Name for AMQP conditions from the router that don't have a more specific name.
+extern const char * const QD_COND;
 #endif

http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/275a8fb3/src/amqp.c
----------------------------------------------------------------------
diff --git a/src/amqp.c b/src/amqp.c
index 9568800..4d2062d 100644
--- a/src/amqp.c
+++ b/src/amqp.c
@@ -44,3 +44,19 @@ const qd_amqp_error_t QD_AMQP_BAD_REQUEST = { 400, "Bad Request" };
 const qd_amqp_error_t QD_AMQP_FORBIDDEN = { 403, "Forbidden" };
 const qd_amqp_error_t QD_AMQP_NOT_FOUND = { 404, "Not Found" };
 const qd_amqp_error_t QD_AMQP_NOT_IMPLEMENTED = { 501, "Not Implemented"};
+
+const char * const QD_AMQP_COND_INTERNAL_ERROR = "amqp:internal-error";
+const char * const QD_AMQP_COND_NOT_FOUND = "amqp:not-found";
+const char * const QD_AMQP_COND_UNAUTHORIZED_ACCESS = "amqp:unauthorized-access";
+const char * const QD_AMQP_COND_DECODE_ERROR = "amqp:decode-error";
+const char * const QD_AMQP_COND_RESOURCE_LIMIT_EXCEEDED = "amqp:resource-limit-exceeded";
+const char * const QD_AMQP_COND_NOT_ALLOWED = "amqp:not-allowed";
+const char * const QD_AMQP_COND_INVALID_FIELD = "amqp:invalid-field";
+const char * const QD_AMQP_COND_NOT_IMPLEMENTED = "amqp:not-implemented";
+const char * const QD_AMQP_COND_RESOURCE_LOCKED = "amqp:resource-locked";
+const char * const QD_AMQP_COND_PRECONDITION_FAILED = "amqp:precondition-failed";
+const char * const QD_AMQP_COND_RESOURCE_DELETED = "amqp:resource-deleted";
+const char * const QD_AMQP_COND_ILLEGAL_STATE = "amqp:illegal-state";
+const char * const QD_AMQP_COND_FRAME_SIZE_TOO_SMALL = "amqp:frame-size-too-small";
+
+const char * const QD_COND_NAME = "router:error";


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org


[2/4] qpid-dispatch git commit: DISPATCH-309: Remove unused QD_CONN_EVENT_ definitions.

Posted by ac...@apache.org.
DISPATCH-309: Remove unused QD_CONN_EVENT_ definitions.


Project: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/commit/454474e1
Tree: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/tree/454474e1
Diff: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/diff/454474e1

Branch: refs/heads/master
Commit: 454474e159d0c662b6c73d8de62a8d1a535aca33
Parents: 408dc10
Author: Alan Conway <ac...@redhat.com>
Authored: Fri Jan 20 17:14:57 2017 -0500
Committer: Alan Conway <ac...@redhat.com>
Committed: Wed Mar 1 13:59:59 2017 -0500

----------------------------------------------------------------------
 include/qpid/dispatch/server.h |  9 ---------
 src/container.c                | 14 ++------------
 src/server.c                   |  6 ------
 3 files changed, 2 insertions(+), 27 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/454474e1/include/qpid/dispatch/server.h
----------------------------------------------------------------------
diff --git a/include/qpid/dispatch/server.h b/include/qpid/dispatch/server.h
index 80e9c25..11dad05 100644
--- a/include/qpid/dispatch/server.h
+++ b/include/qpid/dispatch/server.h
@@ -187,15 +187,6 @@ typedef struct qd_connection_t qd_connection_t;
  * Event type for the connection callback.
  */
 typedef enum {
-    /// The connection just opened via a listener (inbound).
-    /// This event occurs when the AMQP OPEN is received from the client.
-    /// The AMQP connection still needs to be locally opened
-    QD_CONN_EVENT_LISTENER_OPEN,
-
-    /// The connection just opened via a connector (outbound).
-    /// The AMQP connection has been locally and remotely opened.
-    QD_CONN_EVENT_CONNECTOR_OPEN,
-
     /// The connection was closed at the transport level (not cleanly).
     QD_CONN_EVENT_CLOSE,
 

http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/454474e1/src/container.c
----------------------------------------------------------------------
diff --git a/src/container.c b/src/container.c
index e32e739..d6d9c78 100644
--- a/src/container.c
+++ b/src/container.c
@@ -245,6 +245,8 @@ static void notify_closed(qd_container_t *container, qd_connection_t *conn, void
     // this particular list is only ever appended to and never has items inserted or deleted,
     // this usage is safe in this case.
     //
+    // This assumes that pointer assignment is atomic, which it is on most platforms.
+    //
     sys_mutex_lock(container->lock);
     qdc_node_type_t *nt_item = DEQ_HEAD(container->node_type_list);
     sys_mutex_unlock(container->lock);
@@ -603,24 +605,12 @@ int pn_event_handler(void *handler_context, void *conn_context, pn_event_t *even
 }
 
 
-static void open_handler(qd_container_t *container, qd_connection_t *conn, qd_direction_t dir, void *context)
-{
-}
-
-
 static int handler(void *handler_context, void *conn_context, qd_conn_event_t event, qd_connection_t *qd_conn)
 {
     qd_container_t  *container = (qd_container_t*) handler_context;
     pn_connection_t *conn      = qd_connection_pn(qd_conn);
 
     switch (event) {
-    case QD_CONN_EVENT_LISTENER_OPEN:
-        open_handler(container, qd_conn, QD_INCOMING, conn_context);
-        return 1;
-
-    case QD_CONN_EVENT_CONNECTOR_OPEN:
-        open_handler(container, qd_conn, QD_OUTGOING, conn_context);
-        return 1;
 
     case QD_CONN_EVENT_CLOSE:
         return close_handler(container, conn_context, conn, qd_conn);

http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/454474e1/src/server.c
----------------------------------------------------------------------
diff --git a/src/server.c b/src/server.c
index 84d0e28..658bb91 100644
--- a/src/server.c
+++ b/src/server.c
@@ -774,16 +774,10 @@ static int process_connector(qd_server_t *qd_server, qdpn_connector_t *cxtr)
                 //
                 if (!ctx->opened && pn_event_type(event) == PN_CONNECTION_REMOTE_OPEN) {
                     ctx->opened = true;
-                    qd_conn_event_t ce = QD_CONN_EVENT_LISTENER_OPEN;
-
                     if (ctx->connector) {
-                        ce = QD_CONN_EVENT_CONNECTOR_OPEN;
                         ctx->connector->delay = 2000;  // Delay on re-connect in case there is a recurring error
                     } else
                         assert(ctx->listener);
-
-                    qd_server->conn_handler(qd_server->conn_handler_context,
-                                            ctx->context, ce, (qd_connection_t*) qdpn_connector_context(cxtr));
                     events = 1;
                 } else if (pn_event_type(event) == PN_TRANSPORT_ERROR) {
                     if (ctx->connector) {


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org


[4/4] qpid-dispatch git commit: DISPATCH-309: Remove dead code thread-start-handler

Posted by ac...@apache.org.
DISPATCH-309: Remove dead code thread-start-handler

Not used.


Project: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/commit/408dc105
Tree: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/tree/408dc105
Diff: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/diff/408dc105

Branch: refs/heads/master
Commit: 408dc105e8f79b6f0984f56d5f8f608015033f69
Parents: 7a8c2b9
Author: Alan Conway <ac...@redhat.com>
Authored: Fri Jan 20 12:44:40 2017 -0500
Committer: Alan Conway <ac...@redhat.com>
Committed: Wed Mar 1 13:59:59 2017 -0500

----------------------------------------------------------------------
 include/qpid/dispatch/server.h | 29 -----------------------------
 router/src/main.c              | 10 +---------
 src/server.c                   | 16 ----------------
 3 files changed, 1 insertion(+), 54 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/408dc105/include/qpid/dispatch/server.h
----------------------------------------------------------------------
diff --git a/include/qpid/dispatch/server.h b/include/qpid/dispatch/server.h
index dd868a6..80e9c25 100644
--- a/include/qpid/dispatch/server.h
+++ b/include/qpid/dispatch/server.h
@@ -35,21 +35,6 @@
  */
 
 /**
- * Thread Start Handler
- *
- * Callback invoked when a new server thread is started.  The callback is
- * invoked on the newly created thread.
- *
- * This handler can be used to set processor affinity or other thread-specific
- * tuning values.
- *
- * @param context The handler context supplied in qd_server_initialize.
- * @param thread_id The integer thread identifier that uniquely identifies this thread.
- */
-typedef void (*qd_thread_start_cb_t)(void* context, int thread_id);
-
-
-/**
  * Deferred callback
  *
  * This type is for calls that are deferred until they can be invoked on
@@ -63,20 +48,6 @@ typedef void (*qd_deferred_t)(void *context, bool discard);
 
 
 /**
- * Set the optional thread-start handler.
- *
- * This handler is called once on each worker thread at the time the thread is
- * started.  This may be used to set tuning settings like processor affinity,
- * etc.
- *
- * @param qd The dispatch handle returned by qd_dispatch.
- * @param start_handler The thread-start handler invoked per thread on thread startup.
- * @param context Opaque context to be passed back in the callback function.
- */
-void qd_server_set_start_handler(qd_dispatch_t *qd, qd_thread_start_cb_t start_handler, void *context);
-
-
-/**
  * Run the server threads until completion - The blocking version.
  *
  * Start the operation of the server, including launching all of the worker

http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/408dc105/router/src/main.c
----------------------------------------------------------------------
diff --git a/router/src/main.c b/router/src/main.c
index 69efb3a..c09b0a8 100644
--- a/router/src/main.c
+++ b/router/src/main.c
@@ -35,13 +35,6 @@ static qd_dispatch_t *dispatch = 0;
 static qd_log_source_t *log_source = 0;
 static const char* argv0 = 0;
 
-/**
- * The thread_start_handler is invoked once for each server thread at thread startup.
- */
-static void thread_start_handler(void* context, int thread_id)
-{
-}
-
 
 /**
  * This is the OS signal handler, invoked on an undetermined thread at a completely
@@ -116,9 +109,8 @@ static void main_process(const char *config_path, const char *python_pkgdir, int
     qd_dispatch_load_config(dispatch, config_path);
     check(fd);
 
-    (void)server_signal_handler; (void)thread_start_handler;(void)signal_handler;
+    (void)server_signal_handler; (void)signal_handler;
     qd_server_set_signal_handler(dispatch, server_signal_handler, 0);
-    qd_server_set_start_handler(dispatch, thread_start_handler, 0);
 
     signal(SIGHUP,  signal_handler);
     signal(SIGQUIT, signal_handler);

http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/408dc105/src/server.c
----------------------------------------------------------------------
diff --git a/src/server.c b/src/server.c
index 4ba100c..84d0e28 100644
--- a/src/server.c
+++ b/src/server.c
@@ -64,7 +64,6 @@ struct qd_server_t {
     const char               *sasl_config_name;
     qdpn_driver_t            *driver;
     qd_log_source_t          *log_source;
-    qd_thread_start_cb_t      start_handler;
     qd_conn_handler_cb_t      conn_handler;
     qd_pn_event_handler_cb_t  pn_event_handler;
     qd_pn_event_complete_cb_t pn_event_complete_handler;
@@ -841,13 +840,6 @@ static void *thread_run(void *arg)
         return 0;
 
     //
-    // Invoke the start handler if the application supplied one.
-    // This handler can be used to set NUMA or processor affinnity for the thread.
-    //
-    if (qd_server->start_handler)
-        qd_server->start_handler(qd_server->start_context, thread->thread_id);
-
-    //
     // Main Loop
     //
     while (thread->running) {
@@ -1309,7 +1301,6 @@ qd_server_t *qd_server(qd_dispatch_t *qd, int thread_count, const char *containe
     qd_server->sasl_config_path = sasl_config_path;
     qd_server->sasl_config_name = sasl_config_name;
     qd_server->driver           = qdpn_driver(qd_server->log_source);
-    qd_server->start_handler    = 0;
     qd_server->conn_handler     = 0;
     qd_server->pn_event_handler = 0;
     qd_server->signal_handler   = 0;
@@ -1380,13 +1371,6 @@ void qd_server_set_signal_handler(qd_dispatch_t *qd, qd_signal_handler_cb_t hand
 }
 
 
-void qd_server_set_start_handler(qd_dispatch_t *qd, qd_thread_start_cb_t handler, void *context)
-{
-    qd->server->start_handler = handler;
-    qd->server->start_context = context;
-}
-
-
 static void qd_server_announce(qd_server_t* qd_server)
 {
     qd_log(qd_server->log_source, QD_LOG_INFO, "Operational, %d Threads Running", qd_server->thread_count);


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org