diff --git a/xos/synchronizer/migrations/0003_auto_20190312_1830.py b/xos/synchronizer/migrations/0003_auto_20190312_1830.py
new file mode 100644
index 0000000..3c3f8fc
--- /dev/null
+++ b/xos/synchronizer/migrations/0003_auto_20190312_1830.py
@@ -0,0 +1,140 @@
+# Copyright 2017-present Open Networking Foundation
+#
+# Licensed 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.
+
+# -*- coding: utf-8 -*-
+# Generated by Django 1.11.11 on 2019-03-12 22:30
+from __future__ import unicode_literals
+
+from django.db import migrations, models
+import django.utils.timezone
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('volt', '0002_auto_20190305_1242'),
+    ]
+
+    operations = [
+        migrations.AlterField(
+            model_name='oltdevice_decl',
+            name='backend_status',
+            field=models.CharField(default=b'Provisioning in progress', max_length=1024),
+        ),
+        migrations.AlterField(
+            model_name='oltdevice_decl',
+            name='device_type',
+            field=models.CharField(default=b'openolt', help_text=b'Phyiscal Device Type', max_length=254),
+        ),
+        migrations.AlterField(
+            model_name='oltdevice_decl',
+            name='driver',
+            field=models.TextField(default=b'voltha', help_text=b'DEPRECATED'),
+        ),
+        migrations.AlterField(
+            model_name='oltdevice_decl',
+            name='leaf_model_name',
+            field=models.CharField(help_text=b'The most specialized model in this chain of inheritance, often defined by a service developer', max_length=1024),
+        ),
+        migrations.AlterField(
+            model_name='oltdevice_decl',
+            name='updated',
+            field=models.DateTimeField(default=django.utils.timezone.now, help_text=b'Time this model was changed by a non-synchronizer'),
+        ),
+        migrations.AlterField(
+            model_name='oltdevice_decl',
+            name='uplink',
+            field=models.TextField(help_text=b'uplink port, exposed via sadis'),
+        ),
+        migrations.AlterField(
+            model_name='onudevice_decl',
+            name='backend_status',
+            field=models.CharField(default=b'Provisioning in progress', max_length=1024),
+        ),
+        migrations.AlterField(
+            model_name='onudevice_decl',
+            name='device_type',
+            field=models.CharField(default=b'asfvolt16_olt', help_text=b'Device Type', max_length=254),
+        ),
+        migrations.AlterField(
+            model_name='onudevice_decl',
+            name='leaf_model_name',
+            field=models.CharField(help_text=b'The most specialized model in this chain of inheritance, often defined by a service developer', max_length=1024),
+        ),
+        migrations.AlterField(
+            model_name='onudevice_decl',
+            name='serial_number',
+            field=models.CharField(help_text=b'Serial number of ONU Device', max_length=254, unique=True),
+        ),
+        migrations.AlterField(
+            model_name='onudevice_decl',
+            name='updated',
+            field=models.DateTimeField(default=django.utils.timezone.now, help_text=b'Time this model was changed by a non-synchronizer'),
+        ),
+        migrations.AlterField(
+            model_name='onudevice_decl',
+            name='vendor',
+            field=models.CharField(help_text=b'Vendor of ONU Device', max_length=254),
+        ),
+        migrations.AlterField(
+            model_name='portbase_decl',
+            name='backend_status',
+            field=models.CharField(default=b'Provisioning in progress', max_length=1024),
+        ),
+        migrations.AlterField(
+            model_name='portbase_decl',
+            name='leaf_model_name',
+            field=models.CharField(help_text=b'The most specialized model in this chain of inheritance, often defined by a service developer', max_length=1024),
+        ),
+        migrations.AlterField(
+            model_name='portbase_decl',
+            name='name',
+            field=models.TextField(db_index=True, help_text=b'Human-readable name of port'),
+        ),
+        migrations.AlterField(
+            model_name='portbase_decl',
+            name='updated',
+            field=models.DateTimeField(default=django.utils.timezone.now, help_text=b'Time this model was changed by a non-synchronizer'),
+        ),
+        migrations.AlterField(
+            model_name='voltservice_decl',
+            name='onos_voltha_pass',
+            field=models.CharField(default=b'rocks', help_text=b'The ONOS Voltha password. By default rocks', max_length=254),
+        ),
+        migrations.AlterField(
+            model_name='voltservice_decl',
+            name='onos_voltha_url',
+            field=models.CharField(default=b'onos-voltha-ui.voltha.svc.cluster.local', help_text=b'The ONOS Voltha address. By default onos-voltha-ui.voltha.svc.cluster.local', max_length=254),
+        ),
+        migrations.AlterField(
+            model_name='voltservice_decl',
+            name='onos_voltha_user',
+            field=models.CharField(default=b'onos', help_text=b'The ONOS Voltha username. By default sdn', max_length=254),
+        ),
+        migrations.AlterField(
+            model_name='voltservice_decl',
+            name='voltha_pass',
+            field=models.CharField(default=b'admin', help_text=b'The Voltha password. By default admin', max_length=254),
+        ),
+        migrations.AlterField(
+            model_name='voltservice_decl',
+            name='voltha_url',
+            field=models.CharField(default=b'voltha.voltha.svc.cluster.local', help_text=b'The Voltha API address. By default voltha.voltha.svc.cluster.local', max_length=254),
+        ),
+        migrations.AlterField(
+            model_name='voltservice_decl',
+            name='voltha_user',
+            field=models.CharField(default=b'voltha', help_text=b'The Voltha username. By default voltha', max_length=254),
+        ),
+    ]
diff --git a/xos/synchronizer/models/volt.xproto b/xos/synchronizer/models/volt.xproto
index 778db60..d830300 100644
--- a/xos/synchronizer/models/volt.xproto
+++ b/xos/synchronizer/models/volt.xproto
@@ -9,41 +9,33 @@
 
     required string voltha_url = 1 [
         help_text = "The Voltha API address. By default voltha.voltha.svc.cluster.local",
-        db_index = False,
         default = "voltha.voltha.svc.cluster.local",
         max_length = 254];
     required int32 voltha_port = 2 [
         help_text = "The Voltha API port. By default 8882",
-        db_index = False,
         default = 8882];
     required string voltha_user = 3 [
         help_text = "The Voltha username. By default voltha",
-        db_index = False,
         default = "voltha",
         max_length = 254];
     required string voltha_pass = 4 [
         help_text = "The Voltha password. By default admin",
-        db_index = False,
         default = "admin",
         max_length = 254];
     required string onos_voltha_url = 5 [
         help_text = "The ONOS Voltha address. By default onos-voltha-ui.voltha.svc.cluster.local",
-        db_index = False,
         default = "onos-voltha-ui.voltha.svc.cluster.local",
         max_length = 254];
     required int32 onos_voltha_port = 6 [
         help_text = "The Voltha API port. By default 8181",
-        db_index = False,
         default = 8181];
     required string onos_voltha_user = 7 [
         help_text = "The ONOS Voltha username. By default sdn",
         max_length = 254,
-        db_index = False,
         default = "onos"];
     required string onos_voltha_pass = 8 [
         help_text = "The ONOS Voltha password. By default rocks",
         max_length = 254,
-        db_index = False,
         default = "rocks"];
 }
 
@@ -56,71 +48,54 @@
         db_index = True];
     optional string name = 2 [
         help_text = "Human-readable name of device",
-        db_index = False,
         max_length = 254,
         unique = True];
     required string device_type = 3 [
         help_text = "Phyiscal Device Type",
-        db_index = False,
         default = "openolt",
         max_length = 254];
     optional string host = 4 [
         help_text = "IP Address of physical OLT Device",
-        db_index = False,
         max_length = 254];
     optional int32 port = 5 [
         help_text = "Port Number of physical OLT Device",
-        db_index = False,
         unique_with = "host"];
     optional string mac_address = 6 [
-        help_text = "Mac address of physical OLT Device",
-        db_index = False];
+        help_text = "Mac address of physical OLT Device"];
 
     optional string serial_number = 9 [
-        help_text = "Serial Number",
-        db_index = False];
+        help_text = "Serial Number"];
     optional string device_id = 10 [
         help_text = "Voltha Device ID",
-        db_index = False,
         feedback_state = True];
     optional string admin_state = 11 [
         help_text = "admin state, whether OLT should be enabled",
         choices = "(('DISABLED', 'DISABLED'), ('ENABLED', 'ENABLED'))",
-        db_index = False,
         default = "ENABLED"];
     optional string oper_status = 12 [
         help_text = "operational status, whether OLT is active",
-        db_index = False,
         feedback_state = True];
     optional string of_id = 13 [
         help_text = "Logical device openflow id",
-        db_index = False,
         feedback_state = True];
     optional string dp_id = 14 [
-        help_text = "Logical device datapath id",
-        db_index = False];
+        help_text = "Logical device datapath id"];
 
     required string uplink = 15 [
-        help_text = "uplink port, exposed via sadis",
-        db_index = False];
+        help_text = "uplink port, exposed via sadis"];
     required string driver = 16 [
         help_text = "DEPRECATED",
-        db_index = False,
         default = "voltha"];  // Used to be sent to ONOS, now unused.
 
     optional string switch_datapath_id = 17 [
-        help_text = "Fabric switch to which the OLT is connected",
-        db_index = False];
+        help_text = "Fabric switch to which the OLT is connected"];
     optional string switch_port = 18 [
-        help_text = "Fabric port to which the OLT is connected",
-        db_index = False];
+        help_text = "Fabric port to which the OLT is connected"];
     optional string outer_tpid = 19 [
-        help_text = "Outer VLAN id field EtherType",
-        db_index = False];
+        help_text = "Outer VLAN id field EtherType"];
 
     optional string nas_id = 20 [
-        help_text = "Authentication ID (propagated to the free-radius server via sadis)",
-        db_index = False];
+        help_text = "Authentication ID (propagated to the free-radius server via sadis)"];
 }
 
 message PortBase (XOSBase){
@@ -131,16 +106,13 @@
         help_text = "Human-readable name of port",
         db_index = True];
     required int32 port_no = 3 [
-        help_text = "Port Number",
-        db_index = False];
+        help_text = "Port Number"];
 
     optional string admin_state = 4 [
         help_text = "admin state, whether port should be enabled",
-        db_index = False,
         feedback_state = True];
     optional string oper_status = 5 [
         help_text = "operational status, whether port is active",
-        db_index = False,
         feedback_state = True];
 }
 
@@ -171,41 +143,33 @@
         db_index = True];
     required string serial_number = 2 [
         help_text = "Serial number of ONU Device",
-        db_index = False,
         max_length = 254,
         tosca_key=True,
         unique = True];
     required string vendor = 3 [
         help_text = "Vendor of ONU Device",
-        db_index = False,
         max_length = 254];
     required string device_type = 4 [
         help_text = "Device Type",
-        db_index = False,
         default = "asfvolt16_olt",
         max_length = 254];
 
     optional string device_id = 5 [
         help_text = "Voltha Device ID",
-        db_index = False,
         feedback_state = True,
         max_length = 254];
     optional string admin_state = 6 [
         help_text = "admin state, whether port should be enabled",
         choices = "(('DISABLED', 'DISABLED'), ('ENABLED', 'ENABLED'))",
-        db_index = False,
         default = "ENABLED"];
     optional string oper_status = 7 [
         help_text = "oper_status",
-        db_index = False,
         feedback_state = True];
     optional string connect_status = 8 [
         help_text = "operational status, whether port is active",
-        db_index = False,
         feedback_state = True];
     optional string reason = 9 [
         help_text = "ONU device configuration state machine status message",
-        db_index = False,
         feedback_state = True];
 }
 
@@ -233,7 +197,6 @@
 
     optional string description = 1 [
         help_text = "Human-readable description",
-        db_index = False,
         max_length = 254];
     optional manytoone onu_device->ONUDevice:volt_service_instances = 2:1003 [
         help_text = "ONUDevice that belongs to this Subscriber chain",
