Charles Allen
1fe277ee29
Merge pull request #2367 from se7entyse7en/feature-rackspace-cloud-files-static-firehose
...
Adds support to use Rackspace's cloudfiles as static firehose
2016-02-25 17:31:06 -08:00
Parag Jain
b82b487f20
remove extra kill parameter
2016-02-24 17:16:18 -06:00
jon-wei
fd3782522c
Rename 'replaceMissingValues...' parameters in RegexExtractionFn
2016-02-24 13:12:56 -08:00
Nishant
6c9e1a28ad
Merge pull request #2519 from gianm/unparseable-handling
...
Better handling of ParseExceptions.
2016-02-24 04:46:29 +05:30
Fangjin Yang
93540c0631
Merge pull request #2503 from gianm/jetty-qos
...
Add druid.indexer.server.maxChatRequests for QoS; deprecate separate ports.
2016-02-23 10:35:53 -08:00
Fangjin Yang
4f300cfe49
Merge pull request #2526 from druid-io/b-slim-patch-1
...
fix docs about sketches
2016-02-23 10:23:53 -08:00
Gian Merlino
3534483433
Better handling of ParseExceptions.
...
Two changes:
- Allow IncrementalIndex to suppress ParseExceptions on "aggregate".
- Add "reportParseExceptions" option to realtime tuning configs. By default this is "false".
Behavior of the counters should now be:
- processed: Number of rows indexed, including rows where some fields could be parsed and some could not.
- thrownAway: Number of rows thrown away due to rejection policy.
- unparseable: Number of rows thrown away due to being completely unparseable (no fields salvageable at all).
If "reportParseExceptions" is true then "unparseable" will always be zero (because a parse error would
cause an exception to be thrown). In addition, "processed" will only include fully parseable rows
(because even partial parse failures will cause exceptions to be thrown).
Fixes #2510 .
2016-02-23 10:11:43 -08:00
Slim
86c4900347
fix thetaSketch post aggregator doc
2016-02-23 10:43:54 -06:00
Himanshu Gupta
c7cb5bff14
fix thetaSketchSetOp doc
2016-02-23 09:17:49 -06:00
Fangjin Yang
0c984f9e32
Merge pull request #2109 from himanshug/segments_in_delta_ingestion
...
idempotent batch delta ingestion
2016-02-22 14:00:45 -08:00
Himanshu Gupta
f7679dd5a9
updating thetaSketchSetOp post agg documentation to reflect the possibility of nesting
2016-02-22 09:38:58 -06:00
Himanshu Gupta
21b0b8a07d
new coordinator endpoint to get list of used segment given a dataSource and list of intervals
2016-02-21 23:17:58 -06:00
Himanshu Gupta
09ffcae4ae
give user the option to specify the segments for dataSource inputSpec
2016-02-21 23:15:31 -06:00
Gian Merlino
23c993c9e7
Add druid.indexer.server.maxChatRequests for QoS; deprecate separate ports.
...
- Add druid.indexer.server.maxChatRequests, which sets up a QoSFilter on the main Jetty server.
- Deprecate druid.indexer.runner.separateIngestionEndpoint
- Deprecate druid.indexer.server.chathandler.*
2016-02-19 13:36:09 -08:00
Bingkun Guo
9e4c908922
generate tarball by mvn package
2016-02-18 16:42:41 -06:00
Fangjin Yang
083f019a48
Merge pull request #2465 from druid-io/more-doc-fix
...
more doc fixes
2016-02-17 11:00:38 -08:00
Fangjin Yang
661c3aac4f
Merge pull request #2483 from druid-io/b-slim-patch-1
...
clarification about monitoring period
2016-02-17 09:46:25 -08:00
fjy
7da6594bfe
more doc fixes
2016-02-17 09:43:47 -08:00
Gian Merlino
3a996216bd
Multivalued dimensions can be compressed since 0.8.0.
2016-02-17 08:33:21 -08:00
Slim
e9f1c94822
Update metrics.md
2016-02-17 09:27:15 -06:00
Slim
ebbb1aa74e
Update metrics.md
2016-02-17 09:05:16 -06:00
pdeva
dd81b5ebe4
correct service names
...
use a `/` instead of `:` cause thats how the service names are declared in the respective config files of coordinator and overlord
2016-02-13 15:26:19 -08:00
Gian Merlino
e0c049c0b0
Make startup properties logging optional.
...
Off by default, but enabled in the example config files. See also #2452 .
2016-02-12 14:12:16 -08:00
Jonathan Wei
d63eec65a1
Merge pull request #2208 from navis/metadataquery-minmax
...
Support min/max values for metadata query
2016-02-11 17:28:07 -08:00
navis.ryu
dd2375477a
Support min/max values for metadata query ( #2208 )
2016-02-12 09:35:58 +09:00
navis.ryu
4d63196535
Support dimension spec for select query
2016-02-12 08:54:28 +09:00
Slim
368988d187
Merge pull request #2291 from druid-io/lookupManager
...
Promoting LookupExtractor state and LookupExtractorFactory to be a first class druid state object.
2016-02-11 16:07:27 -06:00
Fangjin Yang
6b45a9e4a7
Merge pull request #2449 from b-slim/fix_docs
...
fix docs about search query limit
2016-02-11 13:01:41 -08:00
Slim Bouguerra
438a4a9970
fix docs about search query limit
2016-02-11 13:20:59 -06:00
Himanshu
5779b32742
Merge pull request #2439 from metamx/fix2435
...
Make QuotableWhiteSpaceSplitter able to take JSON
2016-02-11 13:14:43 -06:00
Slim Bouguerra
4e119b7a24
Adding lookup ref manager and lookup dimension spec impl
2016-02-11 12:11:51 -06:00
Fangjin Yang
1430bc2c88
Merge pull request #2276 from harshjain2/feature-2021
...
Fix for issue 2021.
2016-02-10 17:04:45 -08:00
Fangjin Yang
f204dfbebe
Merge pull request #2413 from pdeva/patch-9
...
added note about including extension lib
2016-02-10 17:01:27 -08:00
Charles Allen
3a6452c6d4
Make QuotableWhiteSpaceSplitter able to take json
...
* Fixes #2435
2016-02-10 16:42:14 -08:00
Himanshu Gupta
d1cb17d3f7
at broker - only add segments from specific tiers to the timeline
2016-02-09 22:33:22 -06:00
Fangjin Yang
69a6bdcf03
Merge pull request #2427 from gianm/rolling-doc
...
Freshen up rolling update docs
2016-02-09 15:32:27 -08:00
Gian Merlino
95d5526e7c
Freshen up rolling update docs
...
1. Clarify what "Indexing Service / Realtime" means
2. Add info about restore-based middle manager rolling restarts
3. Add info about what happens in middle manager updates
4. More consistent capitalization and spelling of node types
2016-02-09 13:57:04 -08:00
Himanshu
f6eebf5884
Merge pull request #2422 from rasahner/docMinorFixes
...
some minor doc changes
2016-02-09 10:03:22 -06:00
Robin
1d57e3267d
some minor doc changes
2016-02-09 08:20:53 -06:00
pdeva
b75862da7e
make 0.9 compatible
2016-02-08 17:25:34 -08:00
David Lim
57bf61029b
Merge pull request #2416 from druid-io/fix-docs
...
fix docs
2016-02-08 15:09:20 -07:00
fjy
6fc5bcb1ef
fix docs
2016-02-08 13:40:53 -08:00
pdeva
525a911a3c
added note about including extension lib
2016-02-08 12:59:41 -08:00
Himanshu Gupta
b40c342cd1
make Global stupid pool cache size configurable
2016-02-05 14:18:06 -06:00
fjy
9e2295aa61
whitespace fixes
2016-02-04 16:25:51 -08:00
fjy
b52e1e9161
fix spacing again
2016-02-04 16:13:12 -08:00
fjy
962e7bac14
fix rendering
2016-02-04 15:58:20 -08:00
fjy
8405a7710e
tutorial fix
2016-02-04 15:37:47 -08:00
Fangjin Yang
e3273230cc
Merge pull request #2399 from metamx/md-to
...
move table of contents to Markdown and fix broken link
2016-02-04 15:28:29 -08:00
Xavier Léauté
eb593aeb90
css link is broken
...
removing in favor of adjusting on the site
2016-02-04 15:23:20 -08:00
Xavier Léauté
bbc5e5d470
move table of contents to Markdown
...
fixes #2397
2016-02-04 15:23:11 -08:00
fjy
003f54e268
add doc rendering
2016-02-04 14:21:59 -08:00
fjy
1aa363cea7
new quickstart
2016-02-04 09:37:38 -08:00
bin liu
39a4666387
fix doc format
2016-02-03 16:29:31 +08:00
Lou Marvin Caraig
9de57eb1c8
Added documentation
2016-02-02 14:32:12 +01:00
Sameer Al-Sakran
ee2a0e4afa
Update libraries.md
2016-02-01 11:47:50 -08:00
Fangjin Yang
459c2a49ca
Merge pull request #2364 from metamx/fix2356
...
Add more docs around timezone handling
2016-02-01 10:58:15 -08:00
Charles Allen
c9393e5289
Add more docs around timezone handling
...
* Fixes #2356
2016-02-01 08:51:07 -08:00
Jaebin Yoon
66a74a2b88
Fixed the broken link
2016-02-01 01:07:24 -08:00
Fangjin Yang
bbfb8aa7dd
Merge pull request #2358 from druid-io/addCommunityExtensions
...
Add Community Extensions
2016-01-31 17:45:11 -08:00
Erik Dubbelboer
246473c58a
Remove duplicate doc section
2016-01-30 13:50:32 +00:00
Charles Allen
5ec5c7221b
Add Community Extensions
...
Add a "Community Extensions" section to the known libraries
2016-01-29 13:09:15 -08:00
Fangjin Yang
728055f0eb
Merge pull request #2353 from bjozet/doc-fixes
...
DOCs: Missing 'type' for leaveIntermediate
2016-01-29 09:24:16 -08:00
Björn Zettergren
d373573c25
DOCs: Missing 'type' for leaveIntermediate
...
Added missing 'Boolean' as type for leaveIntermediate row in table TuningConfig
2016-01-29 14:42:19 +01:00
navis.ryu
55a888ea2f
time-descending result of select queries
2016-01-29 10:06:05 +09:00
Himanshu Gupta
b3437825f0
add ignoreWhenNoSegments flag to optionally ignore the dataSource inputSpec when no segments were found
2016-01-26 17:23:55 -06:00
Bingkun Guo
b07db4089c
fix doc: Setting druid.coordinator.merge.on will trigger an Append Task instead of Merge Task.
2016-01-26 10:20:32 -06:00
Rafael Abbondanza
145c65c72d
Updates number of parts in a topN query
...
This threw me off a bit, so I'm sure it may throw others off, too.
Updating from 10 to 11 parts.
2016-01-25 10:29:25 -05:00
Harsh Jain
41730b96d4
Fix for issue 2021
2016-01-25 02:48:22 +05:30
binlijin
cd1c71ceb4
rename persistBackgroundCount to numBackgroundPersistThreads
2016-01-22 14:29:41 +08:00
Gian Merlino
d416279c14
SegmentMetadataQuery support for returning aggregators.
2016-01-21 17:27:25 -08:00
Gian Merlino
87c8046c6c
Add StorageAdapter#getColumnTypeName, and various SegmentMetadataQuery adjustments.
...
SegmentMetadataQuery stuff:
- Simplify implementation of SegmentAnalyzer.
- Fix type names for realtime complex columns; this used to try to merge a nice type
name (like "hyperUnique") from mmapped segments with the word "COMPLEX" from incremental
index segments, leading to a merge failure. Now it always uses the nice name.
- Add hasMultipleValues to ColumnAnalysis.
- Add tests for both mmapped and incremental index segments.
- Update docs to include errorMessage.
2016-01-21 15:50:33 -08:00
Slim Bouguerra
e0d90f875c
Graphite emitter
2016-01-21 13:43:37 -06:00
Fangjin Yang
ab635c5cd3
Merge pull request #2315 from rasahner/docUpdateBuild
...
docs: edits related to loadList
2016-01-21 09:52:27 -08:00
Robin
c9368702fa
do some editing of the instructions for using mysql for metadata
2016-01-21 10:37:30 -06:00
Slim
201539260c
Merge pull request #2076 from b-slim/issue_2010_upper_lower_extractionFN
...
adding lower and upper extraction fn
2016-01-21 09:58:07 -06:00
Slim Bouguerra
78feb3a13e
adding lower and upper extraction fn
2016-01-21 08:59:05 -06:00
Nishant
dcb7830330
Merge pull request #984 from drcrallen/thread-priority-rebase
...
Use thread priorities. (aka set `nice` values for background-like tasks)
2016-01-21 15:02:34 +05:30
Charles Allen
2a69a58570
Merge pull request #2149 from binlijin/master
...
Do persist IncrementalIndex in another thread in IndexGeneratorReducer
2016-01-20 17:06:42 -08:00
Charles Allen
2e1d6aaf3d
Use thread priorities. (aka set `nice` values for background-like tasks)
...
* Defaults the thread priority to java.util.Thread.NORM_PRIORITY in io.druid.indexing.common.task.AbstractTask
* Each exec service has its own Task Factory which is assigned a priority for spawned task. Therefore each priority class has a unique exec service
* Added priority to tasks as taskPriority in the task context. <0 means low, 0 means take default, >0 means high. It is up to any particular implementation to determine how to handle these numbers
* Add options to ForkingTaskRunner
* Add "-XX:+UseThreadPriorities" default option
* Add "-XX:ThreadPriorityPolicy=42" default option
* AbstractTask - Removed unneded @JsonIgnore on priority
* Added priority to RealtimePlumber executors. All sub-executors (non query runners) get Thread.MIN_PRIORITY
* Add persistThreadPriority and mergeThreadPriority to realtime tuning config
2016-01-20 14:00:31 -08:00
Logan Linn
c3bdaefe1f
Update batch-ingestion.md
...
Fix documented type of the `dataGranularity` config
2016-01-19 17:20:47 -08:00
binlijin
8e43e2c446
Do persist IncrementalIndex in another thread in IndexGeneratorReducer
2016-01-20 09:20:09 +08:00
Fangjin Yang
0c31f007fc
Merge pull request #1728 from himanshug/aggregators_in_segment_metadata
...
Store AggregatorFactory[] in segment metadata
2016-01-19 12:55:49 -08:00
Himanshu Gupta
a99aef29a1
adding aggregators to segment metadata
2016-01-19 14:23:39 -06:00
zhxiaog
3459a202ce
fixed #1873 , add ability to express CONCAT as an extractionFn
2016-01-18 15:03:17 -08:00
Fangjin Yang
592638f6b3
Merge pull request #2209 from sirpkt/cascade_extraction_functions
...
support cascade execution of extraction filters in extraction dimension spec
2016-01-18 07:59:36 -08:00
Gian Merlino
42ee473052
ZooKeeper 3.4.7 was unreleased, revert to 3.4.6.
2016-01-17 21:31:29 -08:00
Keuntae Park
238dd3be3c
support cascade execution of extraction filters in extraction dimension spec
2016-01-18 11:10:19 +09:00
Gian Merlino
2d3f6e7705
Some more multitenancy docs
2016-01-17 17:47:49 -08:00
Harsh Jain
71f1cd5e34
Fix for issue 2021
2016-01-17 16:10:04 +05:30
Fangjin Yang
f6a1a4ae20
Merge pull request #2138 from KurtYoung/feature-build-v9
...
build v9 directly
2016-01-16 13:35:46 -06:00
Kurt Young
82ff98c2bf
add config for build v9 directly and update docs
2016-01-16 11:26:34 +08:00
Fangjin Yang
2e54553a8f
Merge pull request #1990 from himanshug/schedule_kill_task
...
support periodic hard delete of segments
2016-01-15 15:22:33 -06:00
David Lim
34cd8f8c72
Merge pull request #2258 from fjy/acl-zk
...
acl for zookeeper is added
2016-01-15 10:27:08 -07:00
Nikita Geer
1908d63162
acl for zookeeper is added
2016-01-13 14:56:05 -08:00
navis.ryu
18479bb757
time-descending result of timeseries queries
2016-01-13 12:23:01 +09:00
Fangjin Yang
d7ad93debc
Merge pull request #2221 from binlijin/topN_minTopNThreshold
...
Allow change minTopNThreshold per topN query
2016-01-12 16:22:20 -08:00
Himanshu Gupta
eb2d251ac8
support periodic hard delete of segments
2016-01-12 16:55:05 -06:00
binlijin
2751f785f8
add doc
2016-01-12 11:25:11 +08:00
Fangjin Yang
fafc7c07ba
Merge pull request #2238 from rasahner/docServerviewEndpoint
...
doc: add information about new serverview coordinator endpoint
2016-01-11 10:44:18 -08:00
Robin
c1b813011c
doc: add information about new serverview coordinator endpoint
2016-01-10 19:47:23 -06:00
Himanshu
d255f4baac
Merge pull request #2234 from pjain1/emit_realtime_metrics
...
emit handoff count metrics
2016-01-08 14:24:16 -06:00
Parag Jain
9dba0f67e7
emit handoff count metrics
2016-01-08 12:36:13 -06:00
Himanshu Gupta
0d5f82aee7
document size attribute in thetaSketchSetOp post aggregator
2016-01-07 23:59:03 -06:00
Fangjin Yang
3048b1f0a5
Merge pull request #2174 from metamx/ingest-size-metrics
...
Add metrics for ingest/bytes/received for EventReceiverFirehose
2016-01-06 22:05:55 -08:00
Fangjin Yang
4cc81d3eff
Merge pull request #2096 from b-slim/add_use_case_unapply
...
Add use case unapply
2016-01-06 21:58:12 -08:00
Fangjin Yang
dd262f0451
Merge pull request #2215 from pjain1/fix_doc_metrics
...
correct metric name - segment/added/count -> segment/assigned/count
2016-01-06 16:21:54 -08:00
Parag Jain
768d07b702
correct metric name - segment/added/count -> segment/assigned/count
2016-01-06 15:55:11 -06:00
Slim Bouguerra
032d3bf6e6
Optimization of extraction filter by reversing the lookup
2016-01-06 11:16:11 -06:00
Himanshu
82bdfbbbf1
Merge pull request #2155 from metamx/taskConfigTmpdir
...
Make TaskConfig pull from java.io.tmpdir
2016-01-05 13:58:39 -06:00
Nishant
14989f272d
Add metrics for ingest/bytes/received for EventReceiverFirehose
...
review comments
review comments
2016-01-05 20:06:09 +05:30
Zhao Weinan
5e57ddb8cc
Adding avro support to realtime & hadoop batch indexing.
2016-01-05 10:21:27 +08:00
Robin
0961c0b703
trivial documentation fix
2016-01-04 12:39:10 -06:00
Himanshu
ebccea6bb0
Merge pull request #2188 from druid-io/doc-fix
...
small fixes to documentation
2016-01-04 12:25:26 -06:00
Charles Allen
e18301d99c
Make TaskConfig pull from java.io.tmpdir
...
* Also makes paths built off of java.nio.file.Paths instead of String.format
2016-01-04 10:17:08 -08:00
Robin
e280ab5f07
update zookeeper version to 3.4.7
2016-01-04 11:47:02 -06:00
fjy
d3d2ee03ce
minor fixes to docs
2016-01-03 11:37:06 -08:00
Gian Merlino
5a63c3dd63
Merge pull request #2186 from druid-io/dev-docs2
...
Add intro developer docs
2016-01-03 11:36:41 -05:00
fjy
88f6b9b5ad
Multiple improvements for docs
2016-01-02 21:54:54 -08:00
fjy
06a8e14820
Add intro developer docs
2016-01-02 14:44:45 -08:00
Himanshu Gupta
48de9dfafa
doc update to make it easy to find how to do re-indexing or delta ingestion
2015-12-30 23:58:09 -06:00
Himanshu Gupta
e1ea93b6fc
documenting querying behavior on multi-valued dimensions
2015-12-30 18:14:25 -06:00
Himanshu Gupta
b47d807738
Add support for filtering at DimensionSpec level so that multivalued dimensions can be filtered correctly
...
also adding UTs for multi-valued dimensions
2015-12-30 17:59:47 -06:00
Bingkun Guo
3c107c5757
Merge pull request #2150 from himanshug/emit_query_bytes
...
emit query/bytes metric
2015-12-30 13:44:19 -06:00
Fangjin Yang
e14ad74088
Merge pull request #1936 from b-slim/between_range_with_predicat
...
adding Upper/Lower Bound Filter
2015-12-29 10:11:22 -08:00
Fangjin Yang
b1261035a7
Merge pull request #1861 from guobingkun/insert_segment_tool
...
insert-segment tool
2015-12-29 10:06:07 -08:00
Fangjin Yang
5042b20eb4
Merge pull request #2164 from pdeva/patch-7
...
correct docs
2015-12-27 14:43:51 -08:00
pdeva
77863285e9
fix typo
2015-12-27 14:28:23 -08:00
pdeva
b308a13483
correct docs
2015-12-27 14:27:20 -08:00
pdeva
98fc08b0de
List who can access metadata storage
...
This is useful to know which ip addresses you need to allow to access your RDS instance for example
2015-12-27 14:25:17 -08:00
Himanshu Gupta
1a8546a682
emit query/bytes metric
2015-12-23 00:29:44 -06:00
Fangjin Yang
daaa24d7ad
Merge pull request #2145 from gianm/restoring-option
...
druid.indexer.task.restoreTasksOnRestart configuration.
2015-12-22 15:22:32 -08:00
Gian Merlino
bad270b6c4
druid.indexer.task.restoreTasksOnRestart configuration.
2015-12-22 10:59:15 -08:00
Himanshu Gupta
b96f560255
emit query/node/bytes metric
2015-12-21 23:23:20 -06:00
Charles Allen
c2a2d19d62
Merge pull request #2126 from guobingkun/remove_single_announcer
...
Remove SingleDataSegmentAnnouncer in favor of BatchDataSegmentAnnouncer
2015-12-21 08:55:07 -08:00
Bingkun Guo
951a4e9b35
Remove SingleDataSegmentAnnouncer in favor of BatchDataSegmentAnnouncer
2015-12-21 00:05:53 -06:00
Bingkun Guo
89b477970f
DataSegmentFinder tool
...
`insert-segment-to-db` is a tool that can insert segments into Druid metadata storage. It is intended to be used
to update the segment table in metadata storage after people manually migrate segments from one place to another.
It can also be used to insert missing segment into Druid, or even recover metadata storage by telling it where the
segments are stored.
Note: This tool expects users to have Druid cluster running in a "safe" mode, where there are no active tasks to interfere
the segments being inserted. Users can optionally bring down the cluster to make 100% sure nothing is interfering.
2015-12-21 00:02:04 -06:00
Fangjin Yang
7019d3c421
Merge pull request #2107 from jon-wei/fix_smq
...
More efficient SegmentMetadataQuery
2015-12-18 16:40:47 -08:00
fjy
398a3ec620
add docs for more specs
2015-12-17 18:06:30 -08:00
jon-wei
356b07c6c3
More efficient SegmentMetadataQuery
2015-12-17 12:46:23 -08:00
Jonathan Wei
f8cf84f466
Merge pull request #1995 from himanshug/num_rows_seg_metadata_query
...
add numRows to segment metadata query response
2015-12-17 12:23:46 -08:00
Fangjin Yang
cb085f99d3
Merge pull request #2097 from metamx/update-coordinator-docs
...
update the coordinator API docs to better explain how to format ISO86…
2015-12-15 17:35:48 -08:00
desaianuj
2f32cb1fb6
update the coordinator API docs to better explain how to format ISO8601 intervals in the request url
2015-12-15 16:17:54 -08:00
Gian Merlino
e6c2db89da
Merge pull request #1921 from jon-wei/flat_json
...
Add docs and benchmark for JSON flattening parser
2015-12-14 20:53:54 -08:00
Fangjin Yang
e7f06cf61c
Merge pull request #2075 from jon-wei/regex_extract
...
Configurable value replacement on match failure for RegexExtractionFn
2015-12-14 19:10:50 -08:00
jon-wei
c88f75df7c
Configurable value replacement on match failure for RegexExtractionFn
2015-12-14 17:57:41 -08:00
Steve M
2b5a010332
Change sample worker config spec with host:port instead of ip:port.
...
Also extend description of the 'affinity' property of the worker strategy
fillCapacityWithAffinity and fix a couple typos of middle manager (to
be more consistent throughout the page).
Add additional verbiage about appropriate middle manager host value.
2015-12-14 14:59:23 -08:00
Slim Bouguerra
77afdf25e3
adding Bound Filter
2015-12-10 08:47:21 -06:00
jon-wei
c53bf85d83
Add docs and benchmark for JSON flattening parser
2015-12-09 16:13:30 -08:00
Fangjin Yang
b0ab363022
Merge pull request #2052 from gianm/service-names
...
Change service names in docs, examples to match defaults in the code.
2015-12-08 15:40:35 -08:00