diff --git a/.asf.yaml b/.asf.yaml
new file mode 100644
index 0000000..6067aec
--- /dev/null
+++ b/.asf.yaml
@@ -0,0 +1,19 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+publish:
+  whoami: asf-site
diff --git a/content/docs/flink/current/documentation/index.html b/content/docs/flink/current/documentation/index.html
index b8b4e75..033f25d 100644
--- a/content/docs/flink/current/documentation/index.html
+++ b/content/docs/flink/current/documentation/index.html
@@ -209,10 +209,14 @@
 
 <p><a href="../flink-streaming-influxdb">InfluxDB connector</a></p>
 
+<p><a href="../flink-streaming-influxdb2">InfluxDB2 connector</a> <img src="/assets/themes/apache-clean/img/new-black.png" alt="" height="36px" width="36px" /></p>
+
 <p><a href="../flink-streaming-kudu">Kudu connector</a></p>
 
 <p><a href="../flink-streaming-netty">Netty connector</a></p>
 
+<p><a href="../flink-streaming-pinot">Pinot connector</a> <img src="/assets/themes/apache-clean/img/new-black.png" alt="" height="36px" width="36px" /></p>
+
 <p><a href="../flink-streaming-redis">Redis connector</a></p>
 
   </div>
diff --git a/content/docs/flink/current/flink-streaming-kudu/index.html b/content/docs/flink/current/flink-streaming-kudu/index.html
index 760f16c..002acc3 100644
--- a/content/docs/flink/current/flink-streaming-kudu/index.html
+++ b/content/docs/flink/current/flink-streaming-kudu/index.html
@@ -347,18 +347,57 @@
 <p>Read more about Kudu schema design in the <a href="https://kudu.apache.org/docs/schema_design.html">Kudu docs</a>.</p>
 
 <h3 id="supported-data-types">Supported data types</h3>
-<p>| Flink/SQL     | Kudu           | 
-| ————- |:————-:| 
-|    STRING     | STRING        | 
-| BOOLEAN       |    BOOL       | 
-| TINYINT       |   INT8        | 
-| SMALLINT      |  INT16        | 
-| INT           |  INT32        | 
-| BIGINT        |   INT64     |
-| FLOAT         |  FLOAT      |
-| DOUBLE        |    DOUBLE    |
-| BYTES        |    BINARY    |
-| TIMESTAMP(3)     |    UNIXTIME_MICROS |</p>
+
+<table>
+  <thead>
+    <tr>
+      <th>Flink/SQL</th>
+      <th style="text-align: center">Kudu</th>
+    </tr>
+  </thead>
+  <tbody>
+    <tr>
+      <td><code class="language-plaintext highlighter-rouge">STRING</code></td>
+      <td style="text-align: center">STRING</td>
+    </tr>
+    <tr>
+      <td><code class="language-plaintext highlighter-rouge">BOOLEAN</code></td>
+      <td style="text-align: center">BOOL</td>
+    </tr>
+    <tr>
+      <td><code class="language-plaintext highlighter-rouge">TINYINT</code></td>
+      <td style="text-align: center">INT8</td>
+    </tr>
+    <tr>
+      <td><code class="language-plaintext highlighter-rouge">SMALLINT</code></td>
+      <td style="text-align: center">INT16</td>
+    </tr>
+    <tr>
+      <td><code class="language-plaintext highlighter-rouge">INT</code></td>
+      <td style="text-align: center">INT32</td>
+    </tr>
+    <tr>
+      <td><code class="language-plaintext highlighter-rouge">BIGINT</code></td>
+      <td style="text-align: center">INT64</td>
+    </tr>
+    <tr>
+      <td><code class="language-plaintext highlighter-rouge">FLOAT</code></td>
+      <td style="text-align: center">FLOAT</td>
+    </tr>
+    <tr>
+      <td><code class="language-plaintext highlighter-rouge">DOUBLE</code></td>
+      <td style="text-align: center">DOUBLE</td>
+    </tr>
+    <tr>
+      <td><code class="language-plaintext highlighter-rouge">BYTES</code></td>
+      <td style="text-align: center">BINARY</td>
+    </tr>
+    <tr>
+      <td><code class="language-plaintext highlighter-rouge">TIMESTAMP(3)</code></td>
+      <td style="text-align: center">UNIXTIME_MICROS</td>
+    </tr>
+  </tbody>
+</table>
 
 <p>Note:</p>
 <ul>
diff --git a/content/docs/flink/current/flink-streaming-pinot/index.html b/content/docs/flink/current/flink-streaming-pinot/index.html
index 374b60d..795b708 100644
--- a/content/docs/flink/current/flink-streaming-pinot/index.html
+++ b/content/docs/flink/current/flink-streaming-pinot/index.html
@@ -215,6 +215,7 @@
 <p>The sink class is called <code class="language-plaintext highlighter-rouge">PinotSink</code>.</p>
 
 <h2 id="architecture">Architecture</h2>
+
 <p>The Pinot sink stores elements from upstream Flink tasks in an Apache Pinot table.
 We support two execution modes</p>
 <ul>
@@ -223,6 +224,7 @@
 </ul>
 
 <h3 id="pinotsinkwriter">PinotSinkWriter</h3>
+
 <p>Whenever the sink receives elements from upstream tasks, they are received by an instance of the PinotSinkWriter.
 The <code class="language-plaintext highlighter-rouge">PinotSinkWriter</code> holds a list of <code class="language-plaintext highlighter-rouge">PinotWriterSegment</code>s where each <code class="language-plaintext highlighter-rouge">PinotWriterSegment</code> is capable of storing <code class="language-plaintext highlighter-rouge">maxRowsPerSegment</code> elements.
 Whenever the maximum number of elements to hold is not yet reached the <code class="language-plaintext highlighter-rouge">PinotWriterSegment</code> is considered to be active.
@@ -233,8 +235,9 @@
 <p>Thus, there is always one active <code class="language-plaintext highlighter-rouge">PinotWriterSegment</code> that new incoming elements will go to.
 Over time, the list of <code class="language-plaintext highlighter-rouge">PinotWriterSegment</code> per <code class="language-plaintext highlighter-rouge">PinotSinkWriter</code> increases up to the point where a checkpoint is created.</p>
 
-<p><strong>Checkpointing</strong><br />
-On checkpoint creation <code class="language-plaintext highlighter-rouge">PinotSinkWriter.prepareCommit</code> gets called by the Flink environment.
+<p><strong>Checkpointing</strong></p>
+
+<p>On checkpoint creation <code class="language-plaintext highlighter-rouge">PinotSinkWriter.prepareCommit</code> gets called by the Flink environment.
 This triggers the creation of <code class="language-plaintext highlighter-rouge">PinotSinkCommittable</code>s where each inactive <code class="language-plaintext highlighter-rouge">PinotWriterSegment</code> creates exactly one <code class="language-plaintext highlighter-rouge">PinotSinkCommittable</code>.</p>
 
 <p><img height="250" alt="PinotSinkWriter prepareCommit" src="docs/images/PinotSinkWriter_prepareCommit.png" /></p>
@@ -244,6 +247,7 @@
 A <code class="language-plaintext highlighter-rouge">PinotSinkCommittables</code> then holds the path to the data file on the shared filesystem as well as the minimum and maximum timestamp of all contained elements (extracted via <code class="language-plaintext highlighter-rouge">EventTimeExtractor</code>).</p>
 
 <h3 id="pinotsinkglobalcommitter">PinotSinkGlobalCommitter</h3>
+
 <p>In order to be able to follow the guidelines for Pinot segment naming, we need to include the minimum and maximum timestamp of an element in the metadata of a segment and in its name.
 The minimum and maximum timestamp of all elements between two checkpoints is determined at a parallelism of 1 in the <code class="language-plaintext highlighter-rouge">PinotSinkGlobalCommitter</code>.
 This procedure allows recovering from failure by deleting previously uploaded segments which prevents having duplicate segments in the Pinot table.</p>
@@ -263,24 +267,65 @@
 </ul>
 
 <h2 id="delivery-guarantees">Delivery Guarantees</h2>
+
 <p>Resulting from the above described architecture the <code class="language-plaintext highlighter-rouge">PinotSink</code> provides an at-least-once delivery guarantee.
 While the failure recovery mechanism ensures that duplicate segments are prevented, there might be temporary inconsistencies in the Pinot table which can result in downstream tasks receiving an element multiple times.</p>
 
 <h2 id="options">Options</h2>
-<p>| Option                 | Description                                                                      |
-| ———————- | ——————————————————————————– | 
-| <code class="language-plaintext highlighter-rouge">pinotControllerHost</code>  | Host of the Pinot controller                                                     |
-| <code class="language-plaintext highlighter-rouge">pinotControllerPort</code>  | Port of the Pinot controller                                                     |
-| <code class="language-plaintext highlighter-rouge">tableName</code>            | Target Pinot table’s name                                                        |
-| <code class="language-plaintext highlighter-rouge">maxRowsPerSegment</code>    | Maximum number of rows to be stored within a Pinot segment                       |
-| <code class="language-plaintext highlighter-rouge">tempDirPrefix</code>         | Prefix for temp directories used                                                  |
-| <code class="language-plaintext highlighter-rouge">jsonSerializer</code>       | Serializer used to convert elements to JSON                                      |
-| <code class="language-plaintext highlighter-rouge">eventTimeExtractor</code>   | Defines the way event times are extracted from received objects                   |
-| <code class="language-plaintext highlighter-rouge">segmentNameGenerator</code> | Pinot segment name generator                                                     |
-| <code class="language-plaintext highlighter-rouge">fsAdapter</code>            | Filesystem adapter used to save files for sharing files across nodes               |
-| <code class="language-plaintext highlighter-rouge">numCommitThreads</code>     | Number of threads used in the <code class="language-plaintext highlighter-rouge">PinotSinkGlobalCommitter</code> for committing segments |</p>
+
+<table>
+  <thead>
+    <tr>
+      <th>Option</th>
+      <th>Description</th>
+    </tr>
+  </thead>
+  <tbody>
+    <tr>
+      <td><code class="language-plaintext highlighter-rouge">pinotControllerHost</code></td>
+      <td>Host of the Pinot controller</td>
+    </tr>
+    <tr>
+      <td><code class="language-plaintext highlighter-rouge">pinotControllerPort</code></td>
+      <td>Port of the Pinot controller</td>
+    </tr>
+    <tr>
+      <td><code class="language-plaintext highlighter-rouge">tableName</code></td>
+      <td>Target Pinot table’s name</td>
+    </tr>
+    <tr>
+      <td><code class="language-plaintext highlighter-rouge">maxRowsPerSegment</code></td>
+      <td>Maximum number of rows to be stored within a Pinot segment</td>
+    </tr>
+    <tr>
+      <td><code class="language-plaintext highlighter-rouge">tempDirPrefix</code></td>
+      <td>Prefix for temp directories used</td>
+    </tr>
+    <tr>
+      <td><code class="language-plaintext highlighter-rouge">jsonSerializer</code></td>
+      <td>Serializer used to convert elements to JSON</td>
+    </tr>
+    <tr>
+      <td><code class="language-plaintext highlighter-rouge">eventTimeExtractor</code></td>
+      <td>Defines the way event times are extracted from received objects</td>
+    </tr>
+    <tr>
+      <td><code class="language-plaintext highlighter-rouge">segmentNameGenerator</code></td>
+      <td>Pinot segment name generator</td>
+    </tr>
+    <tr>
+      <td><code class="language-plaintext highlighter-rouge">fsAdapter</code></td>
+      <td>Filesystem adapter used to save files for sharing files across nodes</td>
+    </tr>
+    <tr>
+      <td><code class="language-plaintext highlighter-rouge">numCommitThreads</code></td>
+      <td>Number of threads used in the <code class="language-plaintext highlighter-rouge">PinotSinkGlobalCommitter</code> for committing segments</td>
+    </tr>
+  </tbody>
+</table>
 
 <h2 id="usage">Usage</h2>
+
 <div class="language-java highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nc">StreamExecutionEnvironment</span> <span class="n">env</span> <span class="o">=</span> <span class="o">...</span>
 <span class="c1">// Checkpointing needs to be enabled when executing in STREAMING mode</span>
         <span class="n">env</span><span class="o">.</span><span class="na">enableCheckpointing</span><span class="o">(</span><span class="kt">long</span> <span class="n">interval</span><span class="o">);</span>
diff --git a/content/feed.xml b/content/feed.xml
index 77ed035..f422ad7 100644
--- a/content/feed.xml
+++ b/content/feed.xml
@@ -6,8 +6,8 @@
 </description>
     <link>http://bahir.apache.org/</link>
     <atom:link href="http://bahir.apache.org/feed.xml" rel="self" type="application/rss+xml"/>
-    <pubDate>Tue, 07 Dec 2021 09:18:03 +0100</pubDate>
-    <lastBuildDate>Tue, 07 Dec 2021 09:18:03 +0100</lastBuildDate>
+    <pubDate>Tue, 07 Dec 2021 11:36:34 +0100</pubDate>
+    <lastBuildDate>Tue, 07 Dec 2021 11:36:34 +0100</lastBuildDate>
     <generator>Jekyll v3.9.0</generator>
     
   </channel>
